The output of "net-snmp-config --cflags" can contain optimization flags.
These might not be applicable to the current compiler, causing warnings.
Use PKG_CHECK_MODULES to check for Net-SNMP and obtain the compiler and
linker flags instead, in the same way as for libcurl or poppler-glib.
Ensure these files are updated after pixma/pixma.c is changed. Do not
remove them during "make clean" or "make distclean", because they are
part of the source distribution (generated with "make dist"). Display
the relative paths in the build output.
Some of the status code checks also check that the returned data is
of the expected size. However, if they are not, it is possible to
return SANE_STATUS_GOOD in error. We should generate an appropriate
error code other than SANE_STATUS_GOOD for this case.
Building with --enable-silent-rules makes it easier to identify errors
or warnings in the build output. Automake provides macros for custom
rules to use, so that they will print a similar message to rules which
run the compiler or linker:
...
CC libpieusb_la-pieusb.lo
CCLD libpieusb.la
CCLD libsane-pieusb.la
CC libsane_pixma_la-pixma-s.lo
GEN pixma/pixma_sane_options.h
GEN pixma/pixma_sane_options.c
CC pixma/libpixma_la-pixma.lo
...
This does not change the current output if silent rules are disabled.
The current warnings do not explain to the administrator what risks may
actually be involved by exposing saned to the network, so that they can
take the appropriate measures.
Currently the administrator is advised to restrict incoming connections
to saned (using tcpwrappers and/or firewall rules). This might not have
been the typical posture when this was written. More importantly, these
actions are not meant to protect against a loss of confidentiality, and
the administrator should not be led to believe this is the case.
Suggest the use of a secure tunnel between each client and saned, which
can be achieved without modifying the software.
The saned(8) man page should be used to describe the behavior of saned
itself. The information about configuring inetd, xinetd, or systemd to
launch saned - while it is helpful - belongs in a separate location.
Keep in mind that distribution packages usually configure the service
automatically, and they may ship with their own specific instructions.
(For example, update-inetd can be used in Debian and its derivatives.)
This change moves this information from the man page into a new file,
making it more concise as well. Working examples are moved to separate
files that can be copied directly from the source tree to the system.
malloc returns NULL on error, but this code errors out on the non-NULL pointer
indicating success (which essentially makes this function always fail).
Signed-off-by: Raphael Isemann <teemperor@gmail.com>
This option is not used anywhere in the code or the build system, except
that ./configure will not build device locking support if this is set to
a non-existent group. (It chooses uucp by default.)
However, that check does not actually work. It attempts to run the chgrp
command on a temporary file; but since ./configure is run without root
privileges, that always fails unless the user running ./configure is a
member of the group.
Remove both the option and the broken check. It is assumed that device
locking support was typically disabled in builds because of this issue,
and it will now be restored except where --disable-locking is specified.
While outstanding issues that cause compiler warnings are being fixed,
continue using Debian 10 (oldstable) rather than Debian 11 (stable) to
build HTML documentation and run "make distcheck".
Windows does not allow filenames ending in a period ("."), preventing
this git repository from even being checked out on a Windows system.
Drop the trailing period in these two filenames. Both files will still
be skipped during the build, since they are not included in DESC_FILES
or DESC_EXT_FILES in doc/Makefile.am.