diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2020-03-30 21:30:45 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2020-03-30 21:30:45 +0200 |
commit | ee770c2346eb37e0dcb8b6cf3eaacf3d8efd6bbc (patch) | |
tree | 58f05092be1a17a939e861f8cadcda1b6ca2ecef /debian/patches/0135-saned-remotescanners.patch | |
parent | 0da9e21872802cfc6e975b1ebaf9efb9e5934d84 (diff) | |
parent | fef76e17ed4c607ea73b81279f9ef1d7121be900 (diff) |
Merge branch 'release/experimental/1.0.29-1_experimental1'experimental/1.0.29-1_experimental1
Diffstat (limited to 'debian/patches/0135-saned-remotescanners.patch')
-rw-r--r-- | debian/patches/0135-saned-remotescanners.patch | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/debian/patches/0135-saned-remotescanners.patch b/debian/patches/0135-saned-remotescanners.patch deleted file mode 100644 index 19c24f4..0000000 --- a/debian/patches/0135-saned-remotescanners.patch +++ /dev/null @@ -1,159 +0,0 @@ -Description: saned option to report network-attached devices to clients -Author: Jens-U. Mozdzen <jmozdzen@nde.ag> -Author: Dhionel Díaz <ddiaz@cenditel.gob.ve> -Bug: https://alioth.debian.org/tracker/index.php?func=detail&aid=314768&group_id=30186&atid=410366 -Last-Update: 2016-04-13 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/doc/saned.man -+++ b/doc/saned.man -@@ -10,6 +10,7 @@ - .I [ n ] - .B | \-s - .I [ n ] -+.B | \-r - .B | \-h - .B ] - .SH DESCRIPTION -@@ -37,6 +38,14 @@ - .B saned - will drop root privileges and run as this user (and group). - .PP -+If the -+.B \-r -+flag is specified, saned will also report remote scanners (those that are accessed -+via saned's "net" backend) when receiving an inquiry to list all devices. As the -+remote scanner may not be available at the time of the request, enabling this -+option may cause a significant delay, experienced by the remote client. -+Default is not to report those scanners. -+.PP - The - .B \-d - and -@@ -94,6 +103,14 @@ - machine, we strongly recommend using the Netfilter - \fInf_conntrack_sane\fP module instead. - .PP -+\fBreexport_remote_scanners\fP = \fI[ true | yes | 1 ]\fP -+Enables reporting remote scanners (those accessed via saned's "net" -+backend) to clients. As the remote scanner may not be available at -+the time of the request, enabling this option may cause a significant -+delay, experienced by the remote client. -+Any value other than "true", "yes" or "1" will keep this option disabled, -+which is the default when this option nor the command line flag "-r" is specified. -+.PP - The access list is a list of host names, IP addresses or IP subnets - (CIDR notation) that are permitted to use local SANE devices. IPv6 - addresses must be enclosed in brackets, and should always be specified ---- a/frontend/saned.c -+++ b/frontend/saned.c -@@ -246,6 +246,7 @@ - static int num_handles; - static int debug; - static int run_mode; -+static SANE_Bool reexport_remote_scanners_disabled = SANE_TRUE; - static Handle *handle; - static union - { -@@ -1834,7 +1835,7 @@ - - reply.status = - sane_get_devices ((const SANE_Device ***) &reply.device_list, -- SANE_TRUE); -+ reexport_remote_scanners_disabled); - sanei_w_reply (w, (WireCodecFunc) sanei_w_get_devices_reply, &reply); - } - break; -@@ -2697,6 +2698,23 @@ - DBG (DBG_INFO, "read_config: data port range: %d - %d\n", data_port_lo, data_port_hi); - } - } -+ else if (strstr(config_line, "reexport_remote_scanners") != NULL) -+ { -+ optval = sanei_config_skip_whitespace (++optval); -+ if ((optval != NULL) && (*optval != '\0')) -+ { -+ if (optval == endval) -+ { -+ DBG (DBG_ERR, "read_config: invalid value for data_portrange\n"); -+ continue; -+ } -+ else if ((strcmp( optval, "yes") == 0) || (strcmp( optval, "true") == 0) ||(strcmp( optval, "1") == 0)) -+ { -+ reexport_remote_scanners_disabled = SANE_FALSE; -+ DBG (DBG_INFO, "main: enabled serving remote scanner devices\n"); -+ } -+ } -+ } - } - fclose (fp); - DBG (DBG_INFO, "read_config: done reading config\n"); -@@ -3274,35 +3292,43 @@ - numchildren = 0; - run_mode = SANED_RUN_INETD; - -- if (argc >= 2) -- { -- if (strncmp (argv[1], "-a", 2) == 0) -- run_mode = SANED_RUN_ALONE; -- else if (strncmp (argv[1], "-d", 2) == 0) -- { -- run_mode = SANED_RUN_DEBUG; -- log_to_syslog = SANE_FALSE; -- } -- else if (strncmp (argv[1], "-s", 2) == 0) -- run_mode = SANED_RUN_DEBUG; -- else -- { -- printf ("Usage: saned [ -a [ username ] | -d [ n ] | -s [ n ] ] | -h\n"); -- if ((strncmp (argv[1], "-h", 2) == 0) || -- (strncmp (argv[1], "--help", 6) == 0)) -- exit (EXIT_SUCCESS); -- else -- exit (EXIT_FAILURE); -- } -- } -+ int optc; - -- if (run_mode == SANED_RUN_DEBUG) -- { -- if (argv[1][2]) -- debug = atoi (argv[1] + 2); -+ opterr = 0; /* wir wollen keine fremden Ausgaben */ -+ -+ do { -+ switch (optc = getopt(argc, argv, "ad:s:r")) { -+ -+ case 'a': /* stand-alone */ -+ run_mode = SANED_RUN_ALONE; -+ break; -+ case 'd': /* debug */ -+ run_mode = SANED_RUN_DEBUG; -+ log_to_syslog = SANE_FALSE; - -+ debug = atoi( optarg); - DBG (DBG_WARN, "main: starting debug mode (level %d)\n", debug); -+ break; -+ case 's': /* debug to syslog */ -+ run_mode = SANED_RUN_DEBUG; -+ -+ debug = atoi( optarg); -+ DBG (DBG_WARN, "main: starting debug mode (level %d)\n", debug); -+ break; -+ case 'r': /* re-export network-attached scanners */ -+ reexport_remote_scanners_disabled = SANE_FALSE; -+ DBG (DBG_INFO, "main: enabled serving remote scanner devices\n"); -+ break; -+ case '?': /* unknown option */ -+ printf ("Usage: saned [ -a [ username ] | -d [ n ] | -s [ n ] ] | -r | -h\n"); -+ if ((strncmp (argv[1], "-h", 2) == 0) || -+ (strncmp (argv[1], "--help", 6) == 0)) -+ exit (EXIT_SUCCESS); -+ else -+ exit (EXIT_FAILURE); -+ break; - } -+ } while (optc != -1); - - if (log_to_syslog) - openlog ("saned", LOG_PID | LOG_CONS, LOG_DAEMON); |