--- cgi-bin/admin.c.after-cups-1.3.11-CVE-2009-2820-patch 2009-11-03 12:33:53.000000000 +0100 +++ cgi-bin/admin.c 2009-11-03 12:37:37.000000000 +0100 @@ -486,6 +486,7 @@ do_am_class(http_t *http, /* I - HTTP c ipp_attribute_t *attr; /* member-uris attribute */ char uri[HTTP_MAX_URI]; /* Device or printer URI */ const char *name, /* Pointer to class name */ + *op, /* Operation name */ *ptr; /* Pointer to CGI variable */ const char *title; /* Title of page */ static const char * const pattrs[] = /* Requested printer attributes */ @@ -497,6 +498,7 @@ do_am_class(http_t *http, /* I - HTTP c title = cgiText(modify ? _("Modify Class") : _("Add Class")); + op = cgiGetVariable("OP"); name = cgiGetVariable("PRINTER_NAME"); if (cgiGetVariable("PRINTER_LOCATION") == NULL) @@ -516,6 +518,8 @@ do_am_class(http_t *http, /* I - HTTP c */ cgiClearVariables(); + if (op) + cgiSetVariable("OP", op); if (name) cgiSetVariable("PRINTER_NAME", name);