A server instrumentation library is usually implemented as a dynamic shared library.

The standard "dlopen" function is used to access the shared library at run-time.

The server uses standard environment variables to configure the search locations.

In some cases a CLI parameter is also available.

Search Order for SIL and SIL-SA Libraries

    1) $YUMAPRO_HOME/target/lib directory

         Default: NONE 

     2) --runpath CLI Parameter path list

          Default: NONE

          3) $YUMAPRO_RUNPATH path list

          Default: NONE

      4) $YUMAPRO_INSTALL/lib

           Default:  /usr/share/yumapro/lib

      5) /usr/lib/yumapro  (or other OS-specific variant of /usr/lib)


Example Library Names

       Module Name:  test4.yang

       SIL Name:        libtest4.so

       SIL-SA Name:  libtest4_sa.so

       Bundle Name:  if-bundle

       SIL Name:        libif-bundle.so

       SIL-SA Name:  libif-bundle_sa.so

The netconfd-pro server will only look for the SIL Name format.

The sil-sa-app and combo-app programs will only look for the SIL-SA Name format.  Both formats can exist and both SIL and SIL-SA libraries can be loaded for the same YANG module or bundle.

Example --runpath For SIL-SA

Assume the SIL-SA libraries are installed in /opt/sil-sa-lib and /home/yang/lib directories:

    > sil-sa-app --runpath="/opt/sil-sa-lib:/home/yang/lib"