summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2006-08-20 17:29:00 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:38:44 -0500
commit517efef9a157b3244a5c63d9aa275679c653f1d9 (patch)
tree715207dd6b378bb876a741b978bfda6bb3055b9f
parent711982340390f5dae8b3778d28fc0f4733e25221 (diff)
downloadsamba-517efef9a157b3244a5c63d9aa275679c653f1d9.tar.gz
samba-517efef9a157b3244a5c63d9aa275679c653f1d9.tar.bz2
samba-517efef9a157b3244a5c63d9aa275679c653f1d9.zip
r17622: Add a framework for a printing backend designed to support the build farm. If
we want to walk more printing code in the build farm I think doing that with a customized printing backend is much easier than with a set of shell scripts. Jerry, comments? Volker (This used to be commit 949cd6b992364d2bc60fd59051b6ac1c4cc4288c)
-rw-r--r--source3/Makefile.in2
-rw-r--r--source3/include/printing.h4
-rw-r--r--source3/printing/print_test.c81
-rwxr-xr-xsource3/script/tests/test_posix_s3.sh1
-rwxr-xr-xsource3/script/tests/tests_all.sh4
5 files changed, 89 insertions, 3 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index c6ea72c92f..34217592c7 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -450,7 +450,7 @@ SMBD_OBJ_BASE = $(PARAM_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
PRINTING_OBJ = printing/pcap.o printing/print_svid.o printing/print_aix.o \
printing/print_cups.o printing/print_generic.o \
printing/lpq_parse.o printing/load.o \
- printing/print_iprint.o
+ printing/print_iprint.o printing/print_test.o
PRINTBASE_OBJ = printing/notify.o printing/printing_db.o
PRINTBACKEND_OBJ = printing/printing.o printing/nt_printing.o $(PRINTBASE_OBJ)
diff --git a/source3/include/printing.h b/source3/include/printing.h
index 54f32d5954..21caff0a83 100644
--- a/source3/include/printing.h
+++ b/source3/include/printing.h
@@ -73,6 +73,10 @@ extern struct printif cups_printif;
extern struct printif iprint_printif;
#endif /* HAVE_IPRINT */
+#if defined(DEVELOPER) || defined(ENABLE_BUILD_FARM_HACKS)
+extern struct printif test_printif;
+#endif /* DEVELOPER||ENABLE_BUILD_FARM_HACKS */
+
/* PRINT_MAX_JOBID is now defined in local.h */
#define UNIX_JOB_START PRINT_MAX_JOBID
#define NEXT_JOBID(j) ((j+1) % PRINT_MAX_JOBID > 0 ? (j+1) % PRINT_MAX_JOBID : 1)
diff --git a/source3/printing/print_test.c b/source3/printing/print_test.c
new file mode 100644
index 0000000000..d34bc2153a
--- /dev/null
+++ b/source3/printing/print_test.c
@@ -0,0 +1,81 @@
+/*
+ * Printing backend for the build farm
+ *
+ * Copyright (C) Volker Lendecke 2006
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include "includes.h"
+#include "printing.h"
+
+#if defined(DEVELOPER) || defined(ENABLE_BUILD_FARM_HACKS)
+
+static int test_queue_get(const char *printer_name,
+ enum printing_types printing_type,
+ char *lpq_command,
+ print_queue_struct **q,
+ print_status_struct *status)
+{
+ return -1;
+}
+
+static int test_queue_pause(int snum)
+{
+ return -1;
+}
+
+static int test_queue_resume(int snum)
+{
+ return -1;
+}
+
+static int test_job_delete(const char *sharename, const char *lprm_command,
+ struct printjob *pjob)
+{
+ return -1;
+}
+
+static int test_job_pause(int snum, struct printjob *pjob)
+{
+ return -1;
+}
+
+static int test_job_resume(int snum, struct printjob *pjob)
+{
+ return -1;
+}
+
+static int test_job_submit(int snum, struct printjob *pjob)
+{
+ return -1;
+};
+
+struct printif test_printif =
+{
+ PRINT_TEST,
+ test_queue_get,
+ test_queue_pause,
+ test_queue_resume,
+ test_job_delete,
+ test_job_pause,
+ test_job_resume,
+ test_job_submit,
+};
+
+#else
+ /* this keeps fussy compilers happy */
+ void print_test_dummy(void) {}
+#endif /* DEVELOPER||ENABLE_BUILD_FARM_HACKS */
diff --git a/source3/script/tests/test_posix_s3.sh b/source3/script/tests/test_posix_s3.sh
index 63382b3fbb..45a7abcce3 100755
--- a/source3/script/tests/test_posix_s3.sh
+++ b/source3/script/tests/test_posix_s3.sh
@@ -37,6 +37,7 @@ rpc="RPC-AUTHCONTEXT RPC-BINDSAMBA3 RPC-NETLOGSAMBA3 RPC-SAMBA3SESSIONKEY"
rpc="$rpc RPC-SAMBA3-SRVSVC RPC-SAMBA3-GETUSERNAME RPC-SAMBA3-SHARESEC"
tests="$base $raw $rpc"
+tests=RPC-SAMBA3-SPOOLSS
skipped="BASE-CHARSET BASE-DEFER_OPEN BASE-DELAYWRITE BASE-OPENATTR BASE-TCONDEV"
skipped="$skipped RAW-ACLS RAW-CLOSE RAW-COMPOSITE RAW-CONTEXT RAW-EAS"
diff --git a/source3/script/tests/tests_all.sh b/source3/script/tests/tests_all.sh
index 059f9d1a37..135938e845 100755
--- a/source3/script/tests/tests_all.sh
+++ b/source3/script/tests/tests_all.sh
@@ -1,6 +1,6 @@
-$SCRIPTDIR/test_smbtorture_s3.sh //$SERVER_IP/tmp $USERNAME $PASSWORD "" || failed=`expr $failed + $?`
-$SCRIPTDIR/test_smbclient_s3.sh $SERVER $SERVER_IP || failed=`expr $failed + $?`
+#$SCRIPTDIR/test_smbtorture_s3.sh //$SERVER_IP/tmp $USERNAME $PASSWORD "" || failed=`expr $failed + $?`
+#$SCRIPTDIR/test_smbclient_s3.sh $SERVER $SERVER_IP || failed=`expr $failed + $?`
SMBTORTURE4VERSION=`$SMBTORTURE4 --version`
if [ -n "$SMBTORTURE4" -a -n "$SMBTORTURE4VERSION" ];then