Provided by: libsane-common_1.2.1-7build4_all bug

NAME

       sane-dll - SANE dynamic backend loader

DESCRIPTION

       The  sane-dll  library  implements  a  SANE  (Scanner Access Now Easy) backend that provides access to an
       arbitrary number of other SANE backends.  These backends  may  either  be  pre-loaded  at  the  time  the
       sane-dll  library  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  relevant  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 backend 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_BACKENDS 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 entries 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 accessed 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  directories  are separated by a colon (`:'), under OS/2, they are
              separated 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 environment 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)