Additional Operations
摘要
In the last chapter, the foundation of an IPP request library was laid out. It could validate jobs using the Validate-Job operation, print using either the Create-Job/Send-Document set of operations or the Print-Job operation, and finally cancel a created job using the Cancel-Job operation. The basics of how this library was created were explored: principally how the byte buffers for each request were built and employed. Fundamentally, Chapter 5, “IPP Standards Print,” explored how the byte stream for a request was built, while Chapter 3, “Deep Dive into the Protocol,” explored how the byte stream was deconstructed and interpreted. In this chapter, we work to improve the library by adding some key features such as getting information about jobs a user has created on a printer, getting a searchable printer attribute request, sending a request to identify printers, chunking large print job requests, and more. The format used will be like that displayed in Chapter 5, “IPP Standards Print”: deconstruct the request in code and view the resulting Wireshark traces the request creates. The goal should be a usable library that can be employed to work with IPP/IPPS printers. Along the way it is hoped that you, the reader, can gain some valuable information about how IPP works.