diff options
author | Didier Raboud <odyx@debian.org> | 2018-11-19 21:51:44 +0100 |
---|---|---|
committer | Didier Raboud <odyx@debian.org> | 2018-11-19 21:51:44 +0100 |
commit | 8d088ceb015d4dbf74232dcd47a9d15b4af8024b (patch) | |
tree | 39331ae0554264f90caff0aed2da75fa96464c57 | |
parent | eb30fc494fc279375c45da1acf2a8eefb017e1dd (diff) |
Revert "Fix regression in lpadmin fix (Issue #5305)"
This reverts commit a83658fac59537cf1caf99791fa7edb0deb95c6f.
-rw-r--r-- | systemv/lpadmin.c | 19 | ||||
-rw-r--r-- | test/5.1-lpadmin.sh | 4 | ||||
-rwxr-xr-x | test/run-stp-tests.sh | 37 |
3 files changed, 36 insertions, 24 deletions
diff --git a/systemv/lpadmin.c b/systemv/lpadmin.c index 6828f8a1d..8ea9f3f7b 100644 --- a/systemv/lpadmin.c +++ b/systemv/lpadmin.c @@ -38,7 +38,7 @@ static cups_ptype_t get_printer_type(http_t *http, char *printer, char *uri, size_t urisize); static int set_printer_options(http_t *http, char *printer, int num_options, cups_option_t *options, - char *file, int enable); + char *file); static int validate_name(const char *name); @@ -56,7 +56,6 @@ main(int argc, /* I - Number of command-line arguments */ *pclass, /* Printer class name */ *opt, /* Option pointer */ *val; /* Pointer to allow/deny value */ - int enable = 0; /* Enable/resume printer? */ int num_options; /* Number of options */ cups_option_t *options; /* Options */ char *file, /* New PPD file */ @@ -266,7 +265,8 @@ main(int argc, /* I - Number of command-line arguments */ } } - enable = 1; + if (enable_printer(http, printer)) + return (1); break; case 'm' : /* Use the specified standard script/PPD file */ @@ -649,11 +649,9 @@ main(int argc, /* I - Number of command-line arguments */ } } - if (set_printer_options(http, printer, num_options, options, file, enable)) + if (set_printer_options(http, printer, num_options, options, file)) return (1); } - else if (enable && enable_printer(http, printer)) - return (1); if (evefile[0]) unlink(evefile); @@ -1340,8 +1338,7 @@ set_printer_options( char *printer, /* I - Printer */ int num_options, /* I - Number of options */ cups_option_t *options, /* I - Options */ - char *file, /* I - PPD file */ - int enable) /* I - Enable printer? */ + char *file) /* I - PPD file/interface script */ { ipp_t *request; /* IPP Request */ const char *ppdfile; /* PPD filename */ @@ -1387,12 +1384,6 @@ set_printer_options( ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL, uri); ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "requesting-user-name", NULL, cupsUser()); - if (enable) - { - ippAddInteger(request, IPP_TAG_PRINTER, IPP_TAG_ENUM, "printer-state", IPP_PSTATE_IDLE); - ippAddBoolean(request, IPP_TAG_PRINTER, "printer-is-accepting-jobs", 1); - } - /* * Add the options... */ diff --git a/test/5.1-lpadmin.sh b/test/5.1-lpadmin.sh index 08b8c508f..efcfce482 100644 --- a/test/5.1-lpadmin.sh +++ b/test/5.1-lpadmin.sh @@ -52,8 +52,8 @@ echo "" echo "Add Shared Printer Test" echo "" -echo " lpadmin -p Test3 -E -v ipp://127.0.0.1:$IPP_PORT/printers/Test2 -m everywhere" -$runcups $VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://127.0.0.1:$IPP_PORT/printers/Test2 -m everywhere 2>&1 +echo " lpadmin -p Test3 -E -v ipp://127.0.0.1:$IPP_PORT/printers/Test2 -m raw" +$runcups $VALGRIND ../systemv/lpadmin -p Test3 -E -v ipp://127.0.0.1:$IPP_PORT/printers/Test2 -m raw 2>&1 if test $? != 0; then echo " FAILED" exit 1 diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh index 1176ded56..e704a4eed 100755 --- a/test/run-stp-tests.sh +++ b/test/run-stp-tests.sh @@ -94,35 +94,40 @@ echo "" case "$testtype" in 0) echo "Running in test mode (0)" - nprinters=0 + nprinters1=0 + nprinters2=0 pjobs=0 pprinters=0 loglevel="debug2" ;; 2) echo "Running the medium tests (2)" - nprinters=20 + nprinters1=10 + nprinters2=20 pjobs=20 pprinters=10 loglevel="debug" ;; 3) echo "Running the extreme tests (3)" - nprinters=1000 + nprinters1=500 + nprinters2=1000 pjobs=100 pprinters=50 loglevel="debug" ;; 4) echo "Running the torture tests (4)" - nprinters=20000 + nprinters1=10000 + nprinters2=20000 pjobs=200 pprinters=100 loglevel="debug" ;; *) echo "Running the timid tests (1)" - nprinters=0 + nprinters1=0 + nprinters2=0 pjobs=10 pprinters=0 loglevel="debug2" @@ -534,13 +539,13 @@ if test $ssltype != 0 -a `uname` = Darwin; then fi # -# Setup lots of test queues with PPD files... +# Setup lots of test queues - half with PPD files, half without... # echo "Creating printers.conf for test..." i=1 -while test $i -le $nprinters; do +while test $i -le $nprinters1; do cat >>$BASE/printers.conf <<EOF <Printer test-$i> Accepting Yes @@ -558,6 +563,22 @@ EOF i=`expr $i + 1` done +while test $i -le $nprinters2; do + cat >>$BASE/printers.conf <<EOF +<Printer test-$i> +Accepting Yes +DeviceURI file:/dev/null +Info Test raw printer $i +JobSheets none none +Location CUPS test suite +State Idle +StateMessage Printer $1 is idle. +</Printer> +EOF + + i=`expr $i + 1` +done + if test -f $BASE/printers.conf; then cp $BASE/printers.conf $BASE/printers.conf.orig else @@ -901,7 +922,7 @@ fi # Requests logged count=`wc -l $BASE/log/access_log | awk '{print $1}'` -expected=`expr 35 + 18 + 30 + $pjobs \* 8 + $pprinters \* $pjobs \* 4` +expected=`expr 37 + 18 + 30 + $pjobs \* 8 + $pprinters \* $pjobs \* 4` if test $count != $expected; then echo "FAIL: $count requests logged, expected $expected." echo " <p>FAIL: $count requests logged, expected $expected.</p>" >>$strfile |