dwww Home | Manual pages | Find package

sane-dll(5)              SANE Scanner Access Now Easy              sane-dll(5)

NAME
       sane-dll - SANE dynamic backend loader

DESCRIPTION
       The  sane-dll library implements a SANE (Scanner Access Now Easy) back-
       end that provides access to an arbitrary number of other SANE backends.
       These backends may either be pre-loaded at the time  the  sane-dll  li-
       brary  is  built  or, on systems that support dynamic loading of shared
       libraries, the backends may be loaded at runtime.  In the latter  case,
       adding  support  for a new backend simply involves installing the rele-
       vant library in /usr/lib/x86_64-linux-gnu/sane and adding an  entry  to
       the  dll.conf configuration file.  In other words, no applications need
       to be modified or recompiled to add support for new devices.

DEVICE NAMES
       This backend expects device names of the form:

              backend:device

       Where backend is the name of the backend and device is the name of  the
       device  in  this  backend that should be addressed.  If the device name
       does not contain a colon (:), then the entire string is treated as  the
       device  string  for  the  default  backend.  The default backend is the
       backend listed last in the configuration file (see below) or the  first
       pre-loaded backend (if any).

CONFIGURATION
       The  contents  of the dll.conf file is a list of backend names that may
       be loaded dynamically upon  demand.   Empty  lines  are  ignored,  also
       everything  after a hash mark (#). A sample configuration file is shown
       below:

              net
              # this is a comment
              pnm
              mustek

       It is also possible to add a file in  /etc/sane.d/dll.d  that  contains
       the list of backends to be added. Backends mentioned in a file included
       in this directory will be added before any backends listed in dll.conf.
       Files  in  /etc/sane.d/dll.d can be freely named. They shall follow the
       format conventions as apply for dll.conf.

       Note that backends that were pre-loaded when building this  library  do
       not  have to be listed in this configuration file.  That is, if a back-
       end was preloaded, then that backend will always be present, regardless
       of whether it's listed in the configuration file or not.

       The list of preloaded backends is determined by macro PRELOADABLE_BACK-
       ENDS in file backend/Makefile.in of the SANE source code  distribution.
       After changing the value of this macro, it is necessary to reconfigure,
       rebuild, and reinstall SANE for the change to take effect.

       Aliases are defined in the config file dll.aliases.  It can contain en-
       tries of the form

              alias SomeName SaneDeviceName
              alias "Some Name" SaneDeviceName
              hide SaneDeviceName

       For example:

              alias Epson net:somehost:epson:/dev/sgX
              alias "Siemens ST400" st400:/dev/sgY
              hide net:somehost:pnm:0
              hide net:somehost:pnm:1
              alias "Read from file" pnm:0
              hide pnm:1

       Aliased device names are automatically hidden.

       The idea is that users don't have to deal with complicated device names
       (especially  for networked devices), and to hide other exported devices
       which might confuse them. Note that a hidden device can  still  be  ac-
       cessed if the device name is known, it just doesn't appear on the list.

FILES
       /etc/sane.d/dll.aliases
              The list of aliased or hidden backends.

       /etc/sane.d/dll.conf
              The   backend   configuration  file  (see  also  description  of
              SANE_CONFIG_DIR below).

       /usr/lib/x86_64-linux-gnu/sane/libsane-dll.a
              The static library implementing this backend.

       /usr/lib/x86_64-linux-gnu/sane/libsane-dll.so
              The shared library implementing this backend (present on systems
              that support dynamic loading).

ENVIRONMENT
       SANE_CONFIG_DIR
              This environment variable specifies the list of directories that
              may contain the configuration file.  On *NIX systems, the direc-
              tories are separated by a colon (`:'), under OS/2, they are sep-
              arated by a semi-colon (`;').  If this variable is not set,  the
              configuration  file  is  searched  in  two  default directories:
              first,  the  current  working  directory  (".")  and   then   in
              /etc/sane.d.  If the value of the environment variable ends with
              the  directory separator character, then the default directories
              are searched after the explicitly  specified  directories.   For
              example,  setting SANE_CONFIG_DIR to "/tmp/config:" would result
              in directories tmp/config, ., and /etc/sane.d being searched (in
              this order).

       SANE_DEBUG_DLL
              If the library was compiled with debug support enabled, this en-
              vironment variable controls the debug level  for  this  backend.
              E.g.,  a  value  of 128 requests all debug output to be printed.
              Smaller levels reduce verbosity.

              Value  Description
              0      print severe errors only
              1      print normal errors and important messages
              2      print normal messages
              3      print debugging messages
              4      print everything

              Example: export SANE_DEBUG_DLL=3

SEE ALSO
       sane(7), scanimage(1), sane-"backendname"(5)

AUTHOR
       David Mosberger

                                  13 Jul 2008                      sane-dll(5)

Generated by dwww version 1.16 on Tue Jul 14 00:48:44 CEST 2026.