User Tools

Site Tools


gsoc:google-summer-code-2025-openprinting-projects

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gsoc:google-summer-code-2025-openprinting-projects [2025/02/11 17:36]
till [Port CUPS and Printer Applications to Zephyr]
gsoc:google-summer-code-2025-openprinting-projects [2025/03/10 11:52] (current)
till [Port CUPS and Printer Applications to Zephyr]
Line 245: Line 245:
 =====Utilizing OSS-Fuzz-Gen to Improve Fuzz Testing for OpenPrinting Projects===== =====Utilizing OSS-Fuzz-Gen to Improve Fuzz Testing for OpenPrinting Projects=====
  
-**Security- and AI-Related ​project**+**Security- and AI-related ​project**
  
 1 contributor full-size (350 hours), Level of difficulty: Hard 1 contributor full-size (350 hours), Level of difficulty: Hard
Line 280: Line 280:
 =====Integrating OSS-Fuzz for Go-Based and Python-Based OpenPrinting Projects===== =====Integrating OSS-Fuzz for Go-Based and Python-Based OpenPrinting Projects=====
  
-**Security-Related ​project**+**Security-related ​project**
  
 1 contributor medium-size (175 hours), Level of difficulty: Intermediate 1 contributor medium-size (175 hours), Level of difficulty: Intermediate
Line 309: Line 309:
 =====System/​Fuzz Testing of Printing Protocols===== =====System/​Fuzz Testing of Printing Protocols=====
  
-**Security-Related ​project**+**Security-related ​project**
  
 1 contributor full-size (350 hours), Level of difficulty: Hard 1 contributor full-size (350 hours), Level of difficulty: Hard
Line 334: Line 334:
 =====Security Auditing for OpenPrinting Projects===== =====Security Auditing for OpenPrinting Projects=====
  
-**Security-Related ​project**+**Security-related ​project**
  
 1 contributor full-size (350 hours), Level of difficulty: Intermediate 1 contributor full-size (350 hours), Level of difficulty: Intermediate
Line 419: Line 419:
 And this scenario does not only serve for cheap DIY solutions to save old printers, it also can be a base for cost-effective printer firmware development. And this scenario does not only serve for cheap DIY solutions to save old printers, it also can be a base for cost-effective printer firmware development.
  
-This project is about investigating whether one could run the components of the free software printing stack, as CUPS, PAPPL, libcupsfilters,​ ... under the Zephyr operating system, and actually let this tiny print server execute printer drivers and print on legacy printers. Also the handling of print data and the need of resources here needs to be investigated. Can we hold several pages? Can we use Ghostscript?​ Or do we have to stream raster print data from the client to the printer?+This project is about investigating whether one could run the components of the free software printing stack, as [[https://​openprinting.github.io/​cups|CUPS]][[https://​github.com/​michaelrsweet/​pappl/​|PAPPL]][[https://​github.com/​OpenPrinting/​libcupsfilters|libcupsfilters]], ... under the Zephyr operating system, and actually let this tiny print server execute printer drivers and print on legacy printers. Also the handling of print data and the need of resources here needs to be investigated. Can we hold several pages? Can we use [[https://​ghostscript.com/​|Ghostscript]]? Or do we have to stream raster print data from the client to the printer?
  
 Most desirable is to do this with PAPPL (Printer APPlication Library), as it is designed to emulate a driverless IPP printer in software, including the so-called "​Gadget"​ mode to appear as an IPP-over-USB device when connecting the power supply USB port of the SBC with the client computer'​s USB. Most desirable is to do this with PAPPL (Printer APPlication Library), as it is designed to emulate a driverless IPP printer in software, including the so-called "​Gadget"​ mode to appear as an IPP-over-USB device when connecting the power supply USB port of the SBC with the client computer'​s USB.
  
-Mentors: Till Kamppeter, Project Leader OpenPrinting (till at linux dot com), Zephyr developers TBD+Mentors: Till Kamppeter, Project Leader OpenPrinting (till at linux dot com), Iuliana Prodan (iuliana dot prodan at nxp dot com), Zephyr developers TBD
  
 Desired knowledge: C, Zephyr, USB, network Desired knowledge: C, Zephyr, USB, network
Line 451: Line 451:
 To prevent man-in-the-middle attacks between a client and a network IPP printer with encrypted connection, the first time when a new network printer is accessed, the printer'​s certificate is loaded from the printer and saved locally. On subsequent accesses the printer'​s certificate is compared to the locally saved one and on mismatch the error is logged and the printing does not happen. To prevent man-in-the-middle attacks between a client and a network IPP printer with encrypted connection, the first time when a new network printer is accessed, the printer'​s certificate is loaded from the printer and saved locally. On subsequent accesses the printer'​s certificate is compared to the locally saved one and on mismatch the error is logged and the printing does not happen.
  
-often this happens without ​ant attck, just on a change of the printer configuration or a printer firmware update. Then theuser ​screams on internet platforms, ​ehen they are lucky finds information about this problem and how to remove the old certificate to make the CUPS replace it by the current one and the printer print again.+often this happens without ​an attack, just on a change of the printer configuration or a printer firmware update. Then the user screams on internet platforms, ​when they are lucky finds information about this problem and how to remove the old certificate to make the CUPS replace it by the current one and the printer print again.
  
 To solve this nasty problem, we came to the conclusion to [[https://​github.com/​OpenPrinting/​cups/​issues/​1072#​issuecomment-2537216779|pop up a dialog which allows to remove the certificate file ("​Reset certificte"​) by clicking a button.]]. To solve this nasty problem, we came to the conclusion to [[https://​github.com/​OpenPrinting/​cups/​issues/​1072#​issuecomment-2537216779|pop up a dialog which allows to remove the certificate file ("​Reset certificte"​) by clicking a button.]].
gsoc/google-summer-code-2025-openprinting-projects.1739295411.txt.gz ยท Last modified: 2025/02/11 17:36 by till