Wykres commitów

339 Commity (master)

Autor SHA1 Wiadomość Data
Olaf Meeuwissen e42e3bc849 scanimage: Fix misleading fall through annotation
The `scanimage_exit()` call exits the program.
2019-08-11 10:23:29 +09:00
Povilas Kanapickas e40596c2a5 Fix -Wimplicit-fallthrough warnings by adding standard annotations 2019-06-30 11:58:32 +03:00
Olaf Meeuwissen 7af0d47e29 Keep warning out of redirected image data. Fixes testsuite 2019-06-30 12:45:03 +09:00
Povilas Kanapickas 1c3e1aa184 autotools: Remove files generated by autotools from version control 2019-06-01 14:38:36 +03:00
Olaf Meeuwissen be9736020f autofoo: Sync generated files
The AX_CXX_COMPILE_STDCXX* macros that were embedded in aclocal.m4
have been replaced with the versions found in the autoconf-archive
package from Debian 9.
2019-05-21 22:14:46 +09:00
Olaf Meeuwissen 2bb5ed655a Merge branch 'genesys-enable-cxx' into 'master'
Use C++ for the genesys backend

See merge request sane-project/backends!61
2019-05-20 09:10:53 +00:00
Povilas Kanapickas 728de89d71 scanimage: Guess --format from --output-file if possible 2019-05-11 11:45:27 +03:00
Povilas Kanapickas 86e917b04b scanimage: Prevent --output-file and --batch to be used together 2019-05-11 11:45:27 +03:00
Povilas Kanapickas 7f4944f0a7 scanimage: Warn when output format is not set 2019-05-11 11:45:27 +03:00
Povilas Kanapickas 877cc29d88 scanimage: Raise an error if --format option is an unknown format 2019-05-11 11:45:27 +03:00
Povilas Kanapickas 9e3b5d6381 Update generated files 2019-05-11 00:03:26 +03:00
Povilas Kanapickas 5dbd51d1ec scanimage: Allow specification of the output path via option 2019-04-28 23:27:59 +03:00
Povilas Kanapickas 2653cbaec7 Run autoreconf and automake 2019-03-20 23:09:07 +02:00
Olaf Meeuwissen a78969384b autotools: Sync derived files
This was done by running

  libtoolize --copy
  autoreconf --force --install

on Debian GNU/Linux 9.3.
2018-03-17 10:35:57 +09:00
Olaf Meeuwissen f9a76395da saned: Fix typo in help message 2017-09-29 21:48:14 +09:00
Luiz Angelo Daros de Luca 5288dd5f61 saned: reorganize flags, remove run_mode SANED_RUN_DEBUG
Flags like -a, -d and -s have many overlap effects. This patch restricts
the effect of flags to a simple action.

New -u (user) flag replaces -a optional argument for running saned as a different user.
The code that retrieve the user info and drop privileges migrated to runas_user().
As a side effect, PID file can be created even if getting user info fails.

New -l (listen) flag sets run_mode to standalone.
New -D (daemonize) flag daemonizes saned after bind.
New -o (once) make saned exit after the first client disconnects.
Flag -s (syslog) is gone. Previous behavior can be reproduced with '-a -d level -o -f'.
New -e (stderr) flag for redirecting output to stderr, instead of syslog.

Flag -d (debug) now only sets the debug level and argument is required. Previous behavior
can be reproduced with '-a -d level -o -f -e'.

The run_mode SANED_RUN_DEBUG and SANED_RUN_ALONE shared most of its code
path. With the new flags dealing with their difference, SANED_RUN_DEBUG is gone.

Flag '-a' still works as before but it can be replaced by '-l -D -u user'.

Current uses of -d (debug) or -s (syslog) will break.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-09-29 20:43:36 +09:00
Farid Benamrouche 1f68d8d8c4 saned: Cancel scan if data connection appears to have gone away
The data connection timeout default to 4000ms but is configurable
in saned.conf.

See Alioth 315765
2017-09-07 22:37:31 +09:00
Luiz Angelo Daros de Luca fc57a5a6a5 saned: fix --debug help message (output is stderr)
Man page was correct.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-07-29 17:54:01 +09:00
Olaf Meeuwissen fc4b250a09 .editorconfig: use utf-8 charset throughout 2017-05-29 21:14:30 +09:00
Olaf Meeuwissen f0f187f995 .editorconfig: trim trailing blank lines 2017-05-29 21:14:30 +09:00
Olaf Meeuwissen 23891a2646 .editorconfig: trim trailing whitespace 2017-05-29 21:14:29 +09:00
Olaf Meeuwissen 479ccaeddd autotools: Sync derived files
This was done by running

  autoreconf --force --install

on Debian GNU/Linux 8.8 and reverting the removal of SANE specific
tweaks to ltmain.sh.
2017-05-14 19:48:41 +09:00
Olaf Meeuwissen 9230e0c251 saned: Link against Avahi library 2017-05-13 13:12:06 +09:00
Aaron Muir Hamilton 801558f959 Write density (resolution) JFIF header information with JPEG files. 2017-05-04 18:35:05 +09:00
Olaf Meeuwissen b219bc2c73 Merge branch 'icc-profiles' 2017-05-04 18:26:55 +09:00
Olaf Meeuwissen 92e59791d2 Fix [-Werror=implicit-function-declaration] compiler error
The fileno() is only available if its feature test macro passes.  The
various symbols are defined appropriately in ../include/sane/config.h
during configuration of the build.
2017-04-30 20:05:12 +09:00
Olaf Meeuwissen adebd37b5c Fix [-Wpointer-arith] compiler warnings 2017-04-30 20:00:28 +09:00
Aaron Muir Hamilton c3903cc476 Avoid attaching grayscale ICC profiles to rgb images, or vice-versa.
If the ICC profile added does not match the colour format of the
  image, libpng will abort. This can leave the scanner motors in an
  incorrect state and possibly cause permanent damage.
2017-04-30 18:54:39 +09:00
Aaron Muir Hamilton a907b61bd5 Add ICC profile embedding for PNG output. 2017-04-30 18:54:28 +09:00
Aaron Muir Hamilton 2c653a926a Separate ICC profile loading into a separate file.
This cuts out some duplicate code, and enables us to reuse this
  logic for PNG, JPEG, and any other future output format.
  sanei_load_icc_profile also allows us to know that an ICC profile
  file is not long enough before we start to write it to the output;
  this should prevent poorly-written software from overflowing into
  image data when they read the bad profile based on its length.
2017-04-30 18:54:18 +09:00
Aaron Muir Hamilton a0321d2a92 Include physical resolution (pHYs section) in PNG output. 2017-04-27 21:39:29 +09:00
Olaf Meeuwissen 469dc738aa Only swap 16-bit PNG bytes on machines that are not big-endian
The SANE API specifies that image bytes are in machine native order.
2017-04-27 21:17:34 +09:00
Aaron Muir Hamilton 28eb09eec4 Swap bytes in 16-bit PNGs, because PNG is big-endian. 2017-04-27 20:50:18 +09:00
Olaf Meeuwissen 4289693982 Address memory corruption and information leakage.
Addresses CVE-2017-6318, Alioth#315576 and Debian's BTS#854804.
2017-03-20 20:54:08 +09:00
Olaf Meeuwissen 23f052113b saned: fix [-Wunused-parameter] compiler warning
The `__sane_unused__` attribute has been moved from sanei_backend.h to
sanei.h to make it generally useful instead of limited to backends.
2016-09-04 12:50:19 +09:00
Olaf Meeuwissen bfd1626c4b Sync autofoo 2016-07-13 23:44:26 +09:00
Olaf Meeuwissen 2481e1e98b Sync autofoo 2016-07-10 21:54:24 +09:00
Ruslan Nabioullin be7af68357 Fixed scanning status messages. Fixes 313411 2016-07-06 20:39:09 +09:00
Olaf Meeuwissen c962368626 Sync autofoo 2016-07-01 23:45:43 +09:00
Olaf Meeuwissen 418fbb987d Sync autofoo, once again ... 2016-06-30 21:50:33 +09:00
Olaf Meeuwissen 828cd013e9 Compile getopt replacement functions only if needed
This ought to get rid of the last empty compilation unit warnings.  This
merges libfelib.la with liblib.la.  The former was always used together
with the latter.  The latter was only ever used without the former when
linking backends and tools.

Tools might want to use the getopt functions, backends might just want
to use MD5.
2016-06-30 21:38:04 +09:00
Olaf Meeuwissen f03f1f66d4 Sync autofoo files 2016-06-29 22:15:06 +09:00
Olaf Meeuwissen 81f9557966 Clean up .gitignore file content
Removes empty lines and duplicates (note that .gitignore patterns are
recursive unless anchored with a leading /).
2016-06-27 22:40:20 +09:00
Olaf Meeuwissen cb4924f210 Stop distclean from removing files willy-nilly
The distclean target should only remove files that make creates.  If
there are any that need taking care of, they should be added in on a
per file basis in the Makefile.am that creates it.
2016-06-26 10:24:30 +09:00
Olaf Meeuwissen 8274a52eec Sort .gitignore files 2016-06-26 10:24:30 +09:00
Olaf Meeuwissen bdade6bb07 Sync derived files with previous changes 2016-06-26 10:24:29 +09:00
Yurii Kolesnykov 00984cd111 Fix compilation of saned.c under OS X 2016-06-25 10:53:15 +09:00
Olaf Meeuwissen d853463ef1 Sync derived files
This was done with

  AUTOMAKE="automake --add-missing --copy" autoreconf --force

on Debian GNU/Linux 8.5.
2016-06-14 06:30:48 +09:00
Olaf Meeuwissen 87e12bbf2e Sync derived files with autoreconf --force
For the record, this was done on Debian GNU/Linux 8.5.
2016-06-13 22:24:21 +09:00
Olaf Meeuwissen d3d5dc3da0 Update to autoconf-2.69
This gets rid of a number of obsoleted macros and replaces RETSIGTYPE
with a void literal which can be assumed for C89 and later.

This changeset was prepared using autoupdate and modified to get rid of
whitespace and doubled [] changes.  Changes to acinclude.m4 were added
by hand.
2016-06-13 22:05:34 +09:00
Olaf Meeuwissen 2d6fad58b4 Respect GNU Standards user variables
Several variables are considered "user variables" by the GNU Standards.
This means that the user can pass these to their ./configure and make
invocations as they see fit.  These variables include CPPFLAGS, CFLAGS
and LDFLAGS.

This changeset pushes our use of these variables to the automake shadow
variables, AM_CPPFLAGS, AM_CFLAGS and AM_LDFLAGS, so that user variables
will no longer clobber flags required in order to build.
2016-06-13 22:03:14 +09:00
Olaf Meeuwissen 7a2b112d20 Prefer make variables over literal substitutions
The AC_SUBST and PKG_CHECK_MODULE invocations in configure.ac as well as
acinclude.m4 are sufficient to trigger automake to insert initialization
logic for the variables these introduce.  There is no need to do this by
hand.  Wherever these values are needed, it is better to use a variable.
This allows for one-off overrides on the make command-line (without the
need to run ./configure) for one thing.
2016-06-13 21:50:36 +09:00
Olaf Meeuwissen f3471c2ca6 saned: Use system header IPv6 test macros if available
This should fix [-Wstrict-aliasing] compiler warnings on those systems
where the IN6_IS_ADDR_LOOPBACK and IN6_IS_ADDR_V4MAPPED macros exist.
POSIX.1-2001 states that they shall be defined in netinit/in.h so most
systems will probably have them.
2016-01-02 17:50:34 +09:00
Olaf Meeuwissen cadb4b0fff saned: fix [-Wmaybe-uninitialized] compiler warning 2015-12-27 18:41:55 +09:00
Olaf Meeuwissen 18e4c4a086 Revert "Prevent use of uninitialized variable"
This change introduces a variable that shadows the file scope one.

This reverts commit 45e66aee95.
2015-10-13 23:32:40 +09:00
Olaf Meeuwissen 36876a8366 saned: minor improvement of help message wording 2015-10-12 20:55:19 +09:00
Olaf Meeuwissen 32986192bd fix: declaration-after-statement warning 2015-10-12 20:49:55 +09:00
Olaf Meeuwissen 42aa01e4e5 fix: missing-field-initializers warning 2015-10-12 20:49:55 +09:00
Olaf Meeuwissen fa001c2193 Follow getopt_long usage in scanimage.c
This is on the off chance that getopt_long is not in the system's
standard library.
2015-10-12 20:49:07 +09:00
Olaf Meeuwissen 45e66aee95 Prevent use of uninitialized variable 2015-10-12 20:47:43 +09:00
Matteo Croce eab8fd457d saned: add '-b' option to bind to a specific address 2015-10-12 20:25:15 +09:00
Matteo Croce fed2a2cf60 saned: use getopt_long() for option parsing
The help message has been adjusted to match getopt_long conventions.
2015-10-12 20:24:59 +09:00
Matteo Croce 418d1ecea7 saned: move help message to usage() function 2015-10-12 17:11:49 +09:00
Matteo Croce a79cd0abe7 saned: parse inetd args in main()
move argument parsing logic from run_inetd() to main()
2015-10-12 16:52:01 +09:00
Matteo Croce 2c3cb206ce saned: parse standalone args in main()
move argument parsing logic from run_standalone() to main()
2015-10-12 16:52:01 +09:00
m. allan noah 2ecf18f6fb autoheader and automake
After recent PNG and SNMP changes, need to run autoheader and automake
2015-10-02 21:53:14 -04:00
m. allan noah 87bfd53512 Run autofoo for recent changes 2015-09-19 13:39:38 -04:00
Olaf Meeuwissen 4b825b7d87 Fix scanimage pixel bit depth reporting
The bytes_per_line value may include padding bytes which leads to
incorrect results for small values of pixels_per_line.
2015-09-19 13:39:37 -04:00
Olaf Meeuwissen 002fea134a Align JPEG format command-line option behaviour with TIFF 2015-09-19 12:02:57 -04:00
Matteo Croce bc698d4329 add JPEG support to scanimage 2015-09-19 12:02:57 -04:00
Matteo Croce c83123ee46 add PNG format to scanimage 2015-09-19 12:02:57 -04:00
m. allan noah 7566619e53 rebuild with automake 1.14.1 2015-08-31 20:58:30 -04:00
Rolf Bensch 4a6d0be34e remove atexit() function
- in some cases atexit() doesn't work with libusb-compat
  - all exit() functions are replaced by scanimage_exit()
  - scanimage_exit() has a new parameter (exit status)
2015-08-20 23:34:33 +02:00
Stéphane Voltz 0e6d9621c1 add a new option for tstbackend
- add '-s' '--scan' option to add scan during open/close tests to better
	catch issues with resources incorrectly free'd and alloc'd
2015-07-30 19:00:32 +02:00
Stéphane Voltz 87ca2f5f0e fix clang warning 2015-07-30 14:01:13 +02:00
Alessandro Zummo ccd15dc966 Revert "epsonds: enable double feed detection"
This reverts commit 005c3928a5.
2015-04-26 23:09:08 +02:00
Alessandro Zummo 005c3928a5 epsonds: enable double feed detection 2015-04-26 22:44:01 +02:00
m. allan noah b973a9c49f change exit status of scanimage
If we have successfully scanned at least one image
during a batch scan, don't return SANE_STATUS_NO_DOCS.
Code by Jeff Breidenbach jeff@jab.org
2014-07-14 20:09:02 -04:00
m. allan noah 0bb6ae706d add batch-print option to scanimage
Enables better interoperability with tesseract.
Code by Jeff Breidenbach jeff@jab.org
2014-07-14 20:03:36 -04:00
Mark Buda c591d2b7da Correction of some spelling/grammatical errors in source code 2014-05-15 22:04:37 -04:00
Nils Philippsen 8082a42ec4 avoid using string formats insecurely with "-f"
In the process, simplify processing the device list format: don't copy
the format string for writing \0 into it, just iterate over chunks in
the original string.
2013-12-04 15:04:12 +01:00
Chris Bagwell bc2dc68fa5 Improve snmp detection when cross compiling.
Improving here means do not set LIBS/CFLAGS if library is not detected.
This prevents some unknown options based to ld when host is Linux and
target is mingw32/64.  Further improvements are needed if one wants this
snmp support when cross compiling to really work.

Also, to make commit bisectable, updated all autofoo files using
'autoreconf -i -f' and repatching ltmain.sh.

Also, test-driver was missing from git repo but the Makefile.in
checked in expected it to exist.
2013-08-15 13:10:39 -05:00
Stéphane Voltz 017d8aaf88 add a verbose parameter to trace tests done 2013-08-07 06:49:54 +02:00
Nils Philippsen fab378a681 Add short help message to saned 2013-07-08 15:09:51 +02:00
Stéphane Voltz ce90b61894 add test to protect scanimage from incorrect group options 2013-06-19 17:28:04 +02:00
Stéphane Voltz a545ec1f14 add a test for scanner hotplug detection
- add an option to loop on sane_get_devices for a given time,
  so hotpluggin and removing of scanners can be tested
2013-03-29 21:52:38 +01:00
Louis Lagendijk 3276babdec Added optional support in saned for systemd socket activation. This will allow for
using backend debugging using SANE_DEBUG_xxx to be used for saned controlled
scanning when using socket activation. When only the socket is received we
use the existing code path.
2013-01-10 20:59:26 +01:00
m. allan noah 9b142567fa Revert "forgot to do autoreconf"
This reverts commit aa6f185452.
2012-11-28 21:51:12 -05:00
Paul Newall aa6f185452 forgot to do autoreconf 2012-11-28 22:11:04 +00:00
m. allan noah a3853f9422 Updated scanimage deps 2012-08-14 21:53:19 -04:00
m. allan noah 349a0104b9 updated scanimage and saned linker options 2012-08-09 21:03:10 -04:00
Chris Bagwell e7f01c3b36 Add --disable-dynamic/--disable-preload and update docs
Options were in README but removed at some point.  They
are useful so add them back.

Document BACKENDS and PRELOADABLE_BACKENDS variables in
README as well as in configure --help output.
2011-11-08 21:28:30 -06:00
Chris Bagwell 5061c2d5b2 More mingw portability updates.
Add check for winsock2.h for socket.h replancement. Also, use this
check to add ws2_32 library. Also, switch all winsock.h references
to winsock2.h.

Add check for getuid and getpass; which are not on mingw.

Add a syslog() replacement that is basically a print(). This
is also used by vsyslog() replacement.

Comment out parts of replacement sigprocmask.c on mingw.

To support these configure.in changes, I need to rebuild all
related files with autoconf 2.68 and libtool 2.4. Hand ported
our sane-backend specific changes to newer ltmain.sh.
2011-11-06 12:40:00 -06:00
Chris Bagwell 9bdff1dbdf mingw32 compile fixes
The following updates were made to all directories but backends.
That still needs work. There are also still some pthread issues
and syslog is missing.

 Windows doesn't support SIGHUP or SIGPIPE so make that optional.
 Only include socket header files when sys/socket.h is detected.
 Use winsock.h on windows.
 Only include syslog.h when vsyslog() was detect by configure.
 Skip FD_CLOEXEC when not supported by OS (not defined).
 Only include sys/ioctl.h on platforms that define it.
2011-11-05 11:19:34 -05:00
Olaf Meeuwissen 738b153eb6 Plug a memory in batch mode
scanimage allocates a new buffer for each page scanned without ever
releasing it. Buffer is 32 kiB by default.
2011-06-30 20:56:52 +02:00
Pino Toscano 56e39a9080 Define PATH_MAX if needed 2011-03-04 18:19:06 +01:00
m. allan noah 40e40989d9 rebuild autofoo for magicolor and snmp support 2011-01-18 21:31:13 -05:00
Chris Bagwell 650ea7cf8a update generate files using latest autoconf tools.
Signed-off-by: Chris Bagwell <chris@cnpbagwell.com>
2011-01-02 13:07:31 -06:00
Stéphane Voltz 4d0cd3c5b1 add -A/--all-options to scanimage for exposing all control options of a
backend
2010-11-06 08:00:37 +01:00
Stéphane Voltz 27c7eae2b5 don't print readonly controls as valid command line options 2010-10-31 23:01:43 +01:00