1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-27 22:50:26 +03:00

s3-printing: Fix vlp testprinter application.

Jeremy, we cannot just access cache_path() here without calling lp_load and
friends as well as parsing configfile from the commandline in order to make
"make test/selftest" find the correct conffile with path, etc.

I just changed it to pass the target tdbfilename as an argument, ok ?

Guenther
This commit is contained in:
Günther Deschner 2009-05-12 11:41:14 +02:00
parent 66dff4073d
commit 94665adb48
3 changed files with 38 additions and 39 deletions

View File

@ -507,13 +507,13 @@ sub provision($$$$$$)
copy = tmp
printable = yes
printing = vlp
print command = $bindir_abs/vlp print %p %s
lpq command = $bindir_abs/vlp lpq %p
lp rm command = $bindir_abs/vlp lprm %p %j
lp pause command = $bindir_abs/vlp lppause %p %j
lp resume command = $bindir_abs/vlp lpresume %p %j
queue pause command = $bindir_abs/vlp queuepause %p
queue resume command = $bindir_abs/vlp queueresume %p
print command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb print %p %s
lpq command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb lpq %p
lp rm command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb lprm %p %j
lp pause command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb lppause %p %j
lp resume command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb lpresume %p %j
queue pause command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queuepause %p
queue resume command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queueresume %p
[print2]
copy = print1

View File

@ -39,7 +39,7 @@ struct vlp_job {
static void usage(void)
{
printf("Usage: print-test lpq|lprm|print|queuepause|queueresume|"
printf("Usage: vlp tdbfile=/tmp/vlp.tdb lpq|lprm|print|queuepause|queueresume|"
"lppause|lpresume [args]\n");
}
@ -375,23 +375,22 @@ static int lpresume_command(int argc, char **argv)
int main(int argc, char **argv)
{
/* Parameter check */
char *printdb_path = NULL;
const char *printdb_path = NULL;
if (argc == 1) {
if (argc < 2) {
usage();
return 1;
}
/* Initialise */
#if 0
printdb_path = "/tmp/vlp.tdb";
#else
if (asprintf(&printdb_path, "%svlp.tdb",
cache_path("printing/"))) {
if (!strnequal(argv[1], "tdbfile", strlen("tdbfile"))) {
usage();
return 1;
}
printdb_path = get_string_param(argv[1]);
if (!printdb_path) {
return 1;
}
#endif
if (!(tdb = tdb_open(printdb_path, 0, 0, O_RDWR | O_CREAT,
0666))) {
@ -405,32 +404,32 @@ int main(int argc, char **argv)
/* Do commands */
if (strcmp(argv[1], "lpq") == 0) {
return lpq_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "lpq") == 0) {
return lpq_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "lprm") == 0) {
return lprm_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "lprm") == 0) {
return lprm_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "print") == 0) {
return print_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "print") == 0) {
return print_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "queuepause") == 0) {
return queuepause_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "queuepause") == 0) {
return queuepause_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "queueresume") == 0) {
return queueresume_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "queueresume") == 0) {
return queueresume_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "lppause") == 0) {
return lppause_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "lppause") == 0) {
return lppause_command(argc - 2, &argv[2]);
}
if (strcmp(argv[1], "lpresume") == 0) {
return lpresume_command(argc - 1, &argv[1]);
if (strcmp(argv[2], "lpresume") == 0) {
return lpresume_command(argc - 2, &argv[2]);
}
/* Unknown command */

View File

@ -256,13 +256,13 @@ cat >$SERVERCONFFILE<<EOF
copy = tmp
printable = yes
printing = vlp
print command = $BINDIR/vlp print %p %s
lpq command = $BINDIR/vlp lpq %p
lp rm command = $BINDIR/vlp lprm %p %j
lp pause command = $BINDIR/vlp lppause %p %j
lp resume command = $BINDIR/vlp lpresume %p %j
queue pause command = $BINDIR/vlp queuepause %p
queue resume command = $BINDIR/vlp queueresume %p
print command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb print %p %s
lpq command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb lpq %p
lp rm command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb lprm %p %j
lp pause command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb lppause %p %j
lp resume command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb lpresume %p %j
queue pause command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb queuepause %p
queue resume command = $BINDIR/vlp tdbfile=$LOCKDIR/vlp.tdb queueresume %p
[print2]
copy = print1