Subject: IPP> IPP operations implemented in mod_ipp on Solaris

From: "Ira McDonald" <[email-masked]>
Date: Mon, 10 Mar 2008 11:28:22 -0400

Hi,

Thanks to Norm Jacobs (Sun Open Solaris Printing Team) for the following list
of operations supported by the Open Solaris IPP Server.

Cheers,
- Ira

On Mon, Mar 10, 2008 at 3:34 AM, Norm Jacobs <[email-masked]> wrote:
> Buried somewhere in the docs is the list of IPP operations implemented
>  on Solaris under the mod_ipp Apache module.  I expect that if you tried
>  to search docs.sun.com, you might find it.  That being said, the
>  implementation
>  of the IPP server side support is available in source from
>  src.opensolaris.org.  In ipp-listener.c, there is a dispatch table that
>  maps IPP operations, name, function, and "grouping". a function pointer
>  of NULL means not implemented.
>  http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/print/libipp-listener/common/ipp-listener.c#103
>
>  The contents are as follows:
>
>         /* Printer Operations */
>         { 0x0002, "print-job",                  ipp_print_job,  OP_REQUIRED },
>         { 0x0003, "print-uri",                  NULL,           OP_OPTIONAL },
>         { 0x0004, "validate-job",               ipp_validate_job,
>                                                                 OP_REQUIRED },
>         { 0x0005, "create-job",                 ipp_create_job, OP_OPTIONAL },
>         { 0x000a, "get-jobs",                   ipp_get_jobs,   OP_REQUIRED },
>         { 0x000b, "get-printer-attributes",     ipp_get_printer_attributes,
>                                                                 OP_REQUIRED },
>         { 0x0010, "pause-printer",              ipp_pause_printer,
>                                                                 OP_OPTIONAL },
>         { 0x0011, "resume-printer",             ipp_resume_printer,
>                                                                 OP_OPTIONAL },
>         { 0x0012, "purge-jobs",                 ipp_purge_jobs, OP_OPTIONAL },
>         { 0x0013, "set-printer-attributes",     ipp_set_printer_attributes,
>                                                                 OP_OPTIONAL },
>         { 0x0014, "set-job-attributes",         ipp_set_job_attributes,
>                                                                 OP_OPTIONAL },
>         { 0x0022, "enable-printer",             ipp_enable_printer,
>                                                                 OP_OPTIONAL },
>         { 0x0023, "disable-printer",            ipp_disable_printer,
>                                                                 OP_OPTIONAL },
>         /* Job Operations */
>         { 0x0006, "send-document",              ipp_send_document,
>                                                                 OP_OPTIONAL },
>         { 0x0007, "send-uri",                   NULL,           OP_OPTIONAL },
>         { 0x0008, "cancel-job",                 ipp_cancel_job, OP_REQUIRED },
>         { 0x0009, "get-job-attributes",         ipp_get_job_attributes,
>                                                                 OP_REQUIRED },
>         { 0x000c, "hold-job",                   ipp_hold_job,   OP_OPTIONAL },
>         { 0x000d, "release-job",                ipp_release_job,
>                                                                 OP_OPTIONAL },
>         { 0x000e, "restart-job",                ipp_restart_job,
>                                                                 OP_OPTIONAL },
>         /* Other Operations */
>         { 0x4001, "cups-get-default",           cups_get_default,
>                                                                 OP_VENDOR },
>         { 0x4002, "cups-get-printers",          cups_get_printers,
>                                                                 OP_VENDOR },
>         { 0x4005, "cups-get-classes",           cups_get_classes,
>                                                                 OP_VENDOR },
>         { 0x4008, "cups-accept-jobs",           cups_accept_jobs,
>                                                                 OP_VENDOR },
>         { 0x4009, "cups-reject-jobs",           cups_reject_jobs,
>                                                                 OP_VENDOR },
>         { 0x400D, "cups-move-job",              cups_move_job,  OP_VENDOR },
>         { 0, NULL, NULL, OP_VENDOR }
>
>
>

-- 
Ira McDonald (Musician / Software Architect)
Chair - Linux Foundation Open Printing WG
Blue Roof Music/High North Inc
email: [email-masked]
winter:
  579 Park Place  Saline, MI  48176
  734-944-0094
summer:
  PO Box 221  Grand Marais, MI 49839
  906-494-2434