GSoC 2014 Friday Report #20

Todo list at start of Week

  • Implement the one remaining TODO
  • Debug “file too large” print bug
  • Explore dbus based on-demand starting
  • Create AppArmor profile
  • Create SELinux profile

Completed This Week

  • Implemented the one remaining TODO. Which was trailer support in chunk messages.
  • Fixed “file too large” print bug. Was caused by the libusb timeout.
  • Created AppArmor profile

Todo list at end of week

  • Address issues in system-config-printer which Tim found during review
  • Add a version number

Ya! IPPUSBXD is feature complete and debugged. After optimization the runtime cost has dwindled to 6M instructions for a complete load of the printer’s homepage.

After researching selinux I concluded the syntax is insane. The Apparmor profile syntax is clear and logical; it was easy to understand what Apparmor was restricting. Even large Apparmor profile like CUPSD’s were easy to read. SElinux just appears to be a bundle of abstraction and not something I want to deal with. The abstraction likely makes it easier to write SELinux profiles for experts but not something worthwhile for just one application.

Long term I would like to write a DBUS service for ippusbxd to reduce idle RAM usage.

This marks the end of full-time (or closer to part-time the past few weeks) on ippusbxd and the last time I’ll make a weekly update.

The tasks remaining are:

  1. Give ippusbxd a version number (Till asked for this)
  2. Address issues Tim found when reviewing the system-config-printer patches.

I’ll post a final blog post where I show off the GSoC shirt for this year once those tasks are done.

GSoC 2014 Friday Report #19

Todo list at start of Week

  • Implement the one remaining TODO
  • Fix duplicate queue generation
  • Fix re-start of unplugged then plugged ippusb printers
  • Debug “file too large” print bug
  • Explore dbus based on-demand starting
  • Create AppArmor profile
  • Create SELinux profile

Completed This Week

  • Fixed duplicate queue generation
  • Fixed re-starting of unplugged&plugged printers
  • Sent what should be the final patch against system-config-printer

Todo list at end of week

  • Implement the one remaining TODO
  • Debug “file too large” print bug
  • Explore dbus based on-demand starting
  • Create AppArmor profile
  • Create SELinux profile

The weekly todo lists have been transformed into a large “this is what needs to be done” todo list. Every week the completed tasks are removed and once we hit an empty list I’ll declare the project feature complete and debugged.

In non-ippusb news this week I helped out a friend implement the soon-to-be-standard C++14 memory pool resource class. I wrote the lock-less version.