MINI MINI MANI MO

Path : /opt/oracle/product/18c/dbhomeXE/bin/
File Upload :
Current File : //opt/oracle/product/18c/dbhomeXE/bin/adapters

:
#
# $Header: network_src/utl/adapters.sh.pp /main/41 2017/08/26 01:49:06 rtattuku Exp $
#
# Find which protocol adapters, security products and naming adapters
# are installed and echo results to STDOUT. 
# Invoked without an argument, this utility looks at
# both ntcontab.o and libn9.a for sane installation of pa's.
# Invoked with one argument, this utility returns which pa's
# are actually linked in with an executable.
#
# syntax: adapters <executable>
if [ "$ORACLE_TRACE" ]; then
  set -x
fi
COMMAND="nm"
##################################
NAME=`uname -m`
if [ "$NAME" = "ia64" ] ; then
    SO_EXT=so
else
SO_EXT=so
fi
##################################
if [ "x$1" = "x-64" ] ; then
        LIBDIR=lib64
else
        LIBDIR=lib
fi
VER=18
LIBPATH=$ORACLE_HOME/$LIBDIR
NAMING_TITLE="Oracle Net naming methods"
TRANSPORT_TITLE="Oracle Net transport protocols"
SECURITY_TITLE="Oracle Advanced Security options"
TRANSPORTS="us beq tcp tcps spx dec dce lu62 itcp ispx nmp raw sdp exadirect"
TtoINI="us:ntusini tcp:nttini beq:ntpini tcps:ntzini spx:ntsini dec:ntdini dce:ntodrini lu62:ntlini itcp:ntitini ispx:ntsini nmp:ntnini raw:ntrini sdp:nttsdpini exadirect:ntmqini"
TtoBAS="us:ntus tcp:ntt beq:ntp tcps:ntz spx:nts dec:ntd dce:ntodr lu62:ntl itcp:ntit ispx:ntis nmp:ntn raw:ntr sdp:ntt exadirect:ntmq"
TtoNAM="us:IPC tcp:TCP/IP beq:BEQ tcps:SSL spx:SPX dec:DECNet dce:DCE lu62:LU6.2 itcp:TLI/TCP ispx:TLI/SPX nmp:NamedPipes raw:RAW sdp:SDP/IB exadirect:ExaDirect"
TtoLIB="us:us tcp:tcp tcps:tcps spx:spx dec:dec dce:dce lu62:lu62 itcp:tlit ispx:tlis nmp:nmp beq:beq sdp:tcp raw: exadirect:tmq"
# NOTE: Raw uses libn9.
NATIVE="tns ldap host nis nds cds"
NtoBAS="tns:nnft nis:nnfy cds:nnfd nds:nnfn ldap:nnfl host:nnfh"
NtoLIB="tns:tns nis:nis cds:cds nds:nds ldap:ldap host:host"
NtoNAM="tns:Local~Naming~(tnsnames.ora) nis:NIS~Naming cds:DCE/CDS~Naming nds:NDS~Naming ldap:Oracle~Directory~Naming host:Oracle~Host~Naming"
NAETAB="$ORACLE_HOME/$LIBDIR/naeet.o $ORACLE_HOME/$LIBDIR/naect.o"
NAUTAB="$ORACLE_HOME/$LIBDIR/nautab.o"
if test $# -lt 1
then
NTCONTAB=$ORACLE_HOME/$LIBDIR/ntcontab.o
NTCONTABC=$ORACLE_HOME/network/$LIBDIR/ntcontab.c
NNFGT=$ORACLE_HOME/$LIBDIR/nnfgt.o
NNFGTC=$ORACLE_HOME/network/$LIBDIR/nnfgt.c
LIBNET="libn${VER}"
LIBNETPATH=${LIBPATH}/${LIBNET}
if [ ! -r $NTCONTAB ] ; then
  echo "No ntcontab.o! Goodbye..."
  exit 0
fi
for T in $TRANSPORTS; do
  LIB=`echo ${TtoLIB}  | sed 's/ /\\
/g' | grep "^${T}:" | awk -F: '{print $2}'`
done
for N in $NATIVE; do
  LIB=`echo ${NtoLIB}  | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}'`
done
#
# Adapter entry points should appear twice in libn9.a --
# once from ntcontab.o, and once for the actual entry point
#
	 
echo ""
echo "Installed ${TRANSPORT_TITLE} are:"
echo ""
for T in $TRANSPORTS; do
  INI=`echo ${TtoINI}  | sed 's/ /\\
/g' | grep "^${T}:" | awk -F: '{print $2}'`
  BAS=`echo ${TtoBAS} | sed 's/ /\\
/g' | grep "^${T}:" | awk -F: '{print $2}'`
  NAM=`echo ${TtoNAM} | sed 's/ /\\
/g' | grep "^${T}:" | awk -F: '{print $2}'`
  LIB=`echo ${TtoLIB}  | sed 's/ /\\
/g' | grep "^${T}:" | awk -F: '{print $2}'`
  
  if [ -z "${LIB}" ] ; then
    NUMENTRIES=2
  else
    NUMENTRIES=1
  fi

  if [ "`$COMMAND $NTCONTAB | grep ${INI}  2> /dev/null`" != "" ] ; then
    entrypoint=`$COMMAND ${LIBPATH}/libn${LIB}${VER}.* 2> /dev/null | grep ${INI}  2> /dev/null | wc | awk '{ print $1 }'`

    if [ $entrypoint -ge ${NUMENTRIES} ] ; then
      echo "    ${NAM}"
    else
      if [ "X`echo ${NAM} |grep -i spx`" = "X" ]; then
        echo "   Error!!! ${NAM} is not completely installed!"
        echo "   Present in ntcontab.o, but missing from libn${LIB}${VER}..."
      fi
    fi
  else
    if [ "`$COMMAND ${LIBPATH}/libn${LIB}${VER}.* 2> /dev/null | grep ${INI} 2> /dev/null`" != "" ] ; then
      echo "   Error!!! ${NAM} is not completely installed!"
      echo "   Present in libn${LIB}${VER}, but missing from ntcontab.o..."
    fi
  fi
done

#
# OSI
#
if [ "`$COMMAND $NTCONTAB 2> /dev/null | grep ntio4ini  2> /dev/null`" != "" ] ; then
    entrypoint=`$COMMAND $LIBNETPATH.* 2> /dev/null | grep ntio4ini  2> /dev/null | wc | awk '{ print $1 }'`
    if [ $entrypoint -ge 2 ] ; then 
            echo "    OSI"
    else
	    echo "   Error!!!   OSI Protocol is not completely installed!"
	    echo "   Adapter present in ntcontab.o, but missing from $LIBNET..."
    fi
else
    if [ "`$COMMAND $LIBNETPATH.* 2> /dev/null | grep ntio4ini  2> /dev/null`" != "" ] ; then
	echo "   Error!!!   OSI Protocol is not completely installed!"
	echo "   Adapter present in $LIBNET, but missing from ntcontab.o..."
    fi
fi
#
# AppleTalk
#
if [ "`$COMMAND $NTCONTAB 2> /dev/null | grep ntatini 2> /dev/null`" != "" ] ; then
    entrypoint=`$COMMAND $LIBNETPATH.* 2> /dev/null | grep ntatini 2> /dev/null | wc | awk '{ print $1 }'`
    if [ $entrypoint -ge 2 ] ; then 
      echo "    AppleTalk"
    else
      echo "   Error!!!   AppleTalk Protocol is not completely installed!"
      echo "   Adapter present in ntcontab.o, but missing from $LIBNET..."
    fi
else
    if [ "`$COMMAND $LIBNETPATH.* 2> /dev/null | grep ntatini 2> /dev/null`" != "" ] ; then
	echo "   Error!!!   AppleTalk Protocol is not completely installed!"
	echo "   Adapter present in $LIBNET, but missing from ntcontab.o..."
    fi
fi
echo ""
echo "Installed ${NAMING_TITLE} are:"
echo ""
for N in $NATIVE; do
  BAS=`echo ${NtoBAS} | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}'`
  NAM=`echo ${NtoNAM} | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}' | sed 's/\~/ /g'`
  LIB=`echo ${NtoLIB}  | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}'`
  entries1=`$COMMAND ${LIBPATH}/libn${LIB}${VER}.* 2> /dev/null  | grep ${BAS}boot  2> /dev/null | wc | awk '{ print $1 }'`
 
  if [ -z "${LIB}" ] ; then
    entries2=0
  else
      entries2=`$COMMAND ${LIBPATH}/libn${LIB}${VER}.* 2> /dev/null |grep ${BAS}boot  2> /dev/null | wc | awk '{ print $1 }'`
  fi
  tot_entries=`expr $entries1 + $entries2`
  if [ $tot_entries -ge 2 ] ; then 
    echo "    $NAM"
  else
    if [ $entries2 -eq 1 ] ; then 
      echo "   Error!!!   ${NAM} is not completely installed!"
      echo "   Adapter present in nnfgt.o, but missing from libn${LIB}${VER}..."
    fi 
    if [ $entries1 -eq 1 ] ; then 
      echo "   Error!!!   ${NAM} is not completely installed!"
    fi
  fi
done
echo ""
echo "Installed ${SECURITY_TITLE} are:"
echo ""
 
#
# Oracle Advanced Security
#
if [ "`$COMMAND $NAETAB  2> /dev/null | grep naereni  2> /dev/null`" != "" ] ; then
    echo "    RC4 40-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeren56i  2> /dev/null`" != "" ] ; then
    echo "    RC4 56-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeren128i 2> /dev/null`" != "" ] ; then
    echo "    RC4 128-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null  | grep naeren256i 2> /dev/null`" != "" ] ; then
    echo "    RC4 256-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null  | grep naed4ci 2> /dev/null`" != "" ] ; then
    echo "    DES40 40-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed5ci 2> /dev/null`" != "" ] ; then
    echo "    DES 56-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed112ci 2> /dev/null`" != "" ] ; then
    echo "    3DES 112-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed168ci 2> /dev/null`" != "" ] ; then
    echo "    3DES 168-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea128i  2> /dev/null`" != "" ] ; then
    echo "    AES 128-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea192i  2> /dev/null`" != "" ] ; then
    echo "    AES 192-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea256i 2> /dev/null`" != "" ] ; then
    echo "    AES 256-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naemd5i 2> /dev/null`" != "" ] ; then
    echo "    MD5 crypto-checksumming"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeshai  2> /dev/null`" != "" ] ; then
    echo "    SHA crypto-checksumming (for FIPS)"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naesh1i  2> /dev/null`" != "" ] ; then
    echo "    SHA-1 crypto-checksumming"
fi
if [ "`$COMMAND $NAUTAB 2> /dev/null | grep nauk5akerberos  2> /dev/null`" != "" ] ; then
    echo "    Kerberos v5 authentication"
fi
if [ "`$COMMAND $NAUTAB 2> /dev/null | grep nauradius  2> /dev/null`" != "" ] ; then
    echo "    RADIUS authentication"
fi
if [ "`${COMMAND} $LIBPATH/libnnzentr${VER}.${SO_EXT} 2> /dev/null | grep nztwvelogin 2> /dev/null`" != "" ] ; then
    echo "    ENTRUST authentication"
fi
elif test $# -eq 1
then
EXECUTABLE=$1
if [ ! -x $EXECUTABLE ] ; then
	echo "Executable does not exist! Goodbye..."
	exit 0
fi
   
echo ""
echo "${TRANSPORT_TITLE} linked with $EXECUTABLE are:"
echo ""
# IPC
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntusini  2> /dev/null`" != "" ] ; then
    echo "    IPC"
fi
# Named Pipes
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntnini  2> /dev/null`" != "" ] ; then
    echo "    Named Pipes"
fi
# Bequeath
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntpini  2> /dev/null`" != "" ] ; then
    echo "    BEQ"
fi
# TCP/IP
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep nttini  2> /dev/null`" != "" ] ; then
    echo "    TCP/IP"
fi
# SSL
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntzini 2> /dev/null`" != "" ] ; then
    echo "    SSL"
fi
# SDP/IB
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep nttsdpini 2> /dev/null`" != "" ] ; then
    echo "    SDP/IB"
fi
# ExaDirect
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntmqini  2> /dev/null`" != "" ] ; then
    echo "    ExaDirect"
fi
# RAW
if [ "`$COMMAND $EXECUTABLE 2> /dev/null  | grep ntrini  2> /dev/null`" != "" ] ; then
    echo "    RAW"
fi
# Async
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntasgini  2> /dev/null`" != "" ] ; then
    echo "    Async"
fi
# DECNet
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntidini  2> /dev/null`" != "" ] ; then
    echo "    DECnet"
fi
# SPX/IPX
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntsini  2> /dev/null`" != "" ] ; then
    echo "    SPX/IPX"
fi
# OSI
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntio4ini  2> /dev/null`" != "" ] ; then
    echo "    OSI"
fi
# LU6.2
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntlini  2> /dev/null`" != "" ] ; then
    echo "    LU6.2"
fi
# Banyan
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntvini  2> /dev/null`" != "" ] ; then
    echo "    Banyan"
fi
# AppleTalk
if [ "`$COMMAND $EXECUTABLE 2> /dev/null  | grep ntatini  2> /dev/null`" != "" ] ; then
    echo "    AppleTalk"
fi
# DCE
if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ntodrini  2> /dev/null`" != "" ] ; then
    echo "    DCE"
fi
echo ""
echo "${NAMING_TITLE} linked with $EXECUTABLE are:"
echo ""
# Naming Methods
for N in ${NATIVE}; do
  BAS=`echo ${NtoBAS} | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}'`
  NAM=`echo ${NtoNAM} | sed 's/ /\\
/g' | grep "^${N}:" | awk -F: '{print $2}' | sed 's/\~/ /g'`
  if [ "`$COMMAND $EXECUTABLE 2> /dev/null | grep ${BAS}boot  2> /dev/null`" != "" ] ; then
    echo "    ${NAM}"
  fi
done
#
# Oracle Advanced Security
#
echo ""
echo "${SECURITY_TITLE} linked with $EXECUTABLE are:"
echo ""
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naereni  2> /dev/null`" != "" ] ; then
    echo "    RC4 40-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeren56i  2> /dev/null`" != "" ] ; then
    echo "    RC4 56-bit encryption"
fi
if [ "`$COMMAND $NAETAB  2> /dev/null | grep naeren128i  2> /dev/null`" != "" ] ; then
    echo "    RC4 128-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeren256i 2> /dev/null`" != "" ] ; then
    echo "    RC4 256-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed4ci 2> /dev/null`" != "" ] ; then
    echo "    DES40 40-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed5ci  2> /dev/null`" != "" ] ; then
    echo "    DES 56-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null| grep naed112ci  2> /dev/null`" != "" ] ; then
    echo "    3DES 112-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naed168ci  2> /dev/null`" != "" ] ; then
    echo "    3DES 168-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea128i  2> /dev/null`" != "" ] ; then
    echo "    AES 128-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea192i  2> /dev/null`" != "" ] ; then
    echo "    AES 192-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naea256i  2> /dev/null`" != "" ] ; then
    echo "    AES 256-bit encryption"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naemd5i 2> /dev/null`" != "" ] ; then
    echo "    MD5 crypto-checksumming"
fi
if [ "`$COMMAND $NAETAB 2> /dev/null | grep naeshai  2> /dev/null`" != "" ] ; then
    echo "    SHA crypto-checksumming (for FIPS)"
fi
if [ "`$COMMAND $NAETAB  2> /dev/null | grep naesh1i  2> /dev/null`" != "" ] ; then
    echo "    SHA-1 crypto-checksumming"
fi
if [ "`$COMMAND $NAUTAB 2> /dev/null  | grep nauk5akerberos  2> /dev/null`" != "" ] ; then
    echo "    Kerberos v5 authentication"
fi
if [ "`$COMMAND $NAUTAB 2> /dev/null | grep nauradius 2> /dev/null`" != "" ] ; then
     echo "    RADIUS authentication"
fi
if [ "`${COMMAND} $LIBPATH/libnnzentr${VER}.${SO_EXT} 2> /dev/null | grep nztwvelogin  2> /dev/null`" != "" ] ; then
     echo "    ENTRUST authentication"
fi
else
    echo "usage: adapters <executable>"
    exit 1 
fi

OHA YOOOO