"Fossies" - the Fresh Open Source Software Archive

Member "nss-pam-ldapd-0.9.12/tests/test_ldapcmds.sh" (15 Nov 2021, 31821 Bytes) of package /linux/privat/nss-pam-ldapd-0.9.12.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.


    1 #!/bin/sh
    2 
    3 # test_ldapcmds.sh - simple test script to test lookups
    4 #
    5 # Copyright (C) 2017-2021 Arthur de Jong
    6 #
    7 # This library is free software; you can redistribute it and/or
    8 # modify it under the terms of the GNU Lesser General Public
    9 # License as published by the Free Software Foundation; either
   10 # version 2.1 of the License, or (at your option) any later version.
   11 #
   12 # This library is distributed in the hope that it will be useful,
   13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
   14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   15 # Lesser General Public License for more details.
   16 #
   17 # You should have received a copy of the GNU Lesser General Public
   18 # License along with this library; if not, write to the Free Software
   19 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
   20 # 02110-1301 USA
   21 
   22 # This script expects to be run in an environment where nss-pam-ldapd
   23 # is deployed with an LDAP server with the proper content (and nslcd running).
   24 
   25 set -e
   26 
   27 # find source directory
   28 srcdir="${srcdir-`dirname "$0"`}"
   29 top_srcdir="${top_srcdir-${srcdir}/..}"
   30 builddir="${builddir-`dirname "$0"`}"
   31 top_builddir="${top_builddir-${builddir}/..}"
   32 python="${PYTHON-python}"
   33 PYTHONPATH="${top_srcdir}/utils:${top_builddir}/utils"
   34 export PYTHONPATH
   35 
   36 # Force UTF-8 encoding for repeatable tests
   37 PYTHONIOENCODING='utf-8'
   38 export PYTHONIOENCODING
   39 
   40 # ensure that we are running in the test environment
   41 "$srcdir/testenv.sh" check_nslcd || exit 77
   42 
   43 # if Python is missing, ignore
   44 if [ -z "${python}" ] || ! ${python} --version > /dev/null 2> /dev/null
   45 then
   46   echo "Python (${python}) not found"
   47   exit 77
   48 fi
   49 
   50 # the total number of errors
   51 FAIL=0
   52 
   53 getent_ldap() {
   54   ${python} -m getent ${1:+"$@"}
   55 }
   56 
   57 check() {
   58   # the command to execute
   59   cmd="$1"
   60   # save the expected output
   61   expectfile=`mktemp -t expected.XXXXXX 2> /dev/null || tempfile -s .expected 2> /dev/null`
   62   cat > "$expectfile"
   63   # run the command
   64   echo 'test_nsscmds.sh: checking "'"$cmd"'"'
   65   actualfile=`mktemp -t actual.XXXXXX 2> /dev/null || tempfile -s .actual 2> /dev/null`
   66   eval "$(echo $cmd | sed 's/getent.ldap/getent_ldap/g')" > "$actualfile" 2>&1 || true
   67   # check for differences
   68   diff -Nauwi "$expectfile" "$actualfile" || FAIL=`expr $FAIL + 1`
   69   # remove temporary files
   70   rm "$expectfile" "$actualfile"
   71 }
   72 
   73 ###########################################################################
   74 
   75 echo "test_ldapcmds.sh: testing aliases..."
   76 
   77 # check all aliases
   78 check "getent.ldap aliases|sort" << EOM
   79 bar2:           foobar@example.com
   80 bar:            foobar@example.com
   81 foo:            bar@example.com
   82 EOM
   83 
   84 # get alias by name
   85 check "getent.ldap aliases foo" << EOM
   86 foo:            bar@example.com
   87 EOM
   88 
   89 # get alias by second name
   90 check "getent.ldap aliases bar2" << EOM
   91 bar2:           foobar@example.com
   92 EOM
   93 
   94 # get alias by different case
   95 check "getent.ldap aliases FOO" << EOM
   96 foo:            bar@example.com
   97 EOM
   98 
   99 ###########################################################################
  100 
  101 echo "test_ldapcmds.sh: testing ether..."
  102 
  103 # get an entry by hostname
  104 check "getent.ldap ethers testhost" << EOM
  105 0:18:8a:54:1a:8e testhost
  106 EOM
  107 
  108 # get an entry by alias name
  109 check "getent.ldap ethers testhostalias" << EOM
  110 0:18:8a:54:1a:8e testhostalias
  111 EOM
  112 
  113 # get an entry by hostname with different case
  114 check "getent.ldap ethers TESTHOST" << EOM
  115 0:18:8a:54:1a:8e testhost
  116 EOM
  117 
  118 # get an entry by ethernet address
  119 check "getent.ldap ethers 0:18:8a:54:1a:8b" << EOM
  120 0:18:8a:54:1a:8b testhost2
  121 EOM
  122 
  123 # get all ethers (unsupported)
  124 check "getent.ldap ethers|sort" << EOM
  125 0:18:8a:54:1a:8b testhost2
  126 0:18:8a:54:1a:8e testhost
  127 0:18:8a:54:1a:8e testhostalias
  128 EOM
  129 
  130 ###########################################################################
  131 
  132 echo "test_ldapcmds.sh: testing group..."
  133 
  134 # function to sort group members of a group
  135 sortgroup() {
  136   while read line
  137   do
  138     group="`echo "$line" | sed 's/^\([^:]*:[^:]*:[^:]*\).*$/\1:/'`"
  139     members="`echo "$line" | sed -n 's/^[^:]*:[^:]*:[^:]*:\(.*\)$/\1/p' | tr ',' '\n' | sort | tr '\n' ','`"
  140     members="`echo "$members" | sed 's/,$//'`"
  141     echo "${group}${members}"
  142   done
  143 }
  144 
  145 check "getent.ldap group testgroup | sortgroup" << EOM
  146 testgroup:*:6100:test,testuser4,testusr1
  147 EOM
  148 
  149 check "getent.ldap group users | sortgroup" << EOM
  150 users:*:100:test,testusr1
  151 EOM
  152 
  153 # group with different case should not be found
  154 check "getent.ldap group TESTGROUP" << EOM
  155 EOM
  156 
  157 check "getent.ldap group 6100 | sortgroup" << EOM
  158 testgroup:*:6100:test,testuser4,testusr1
  159 EOM
  160 
  161 check "getent.ldap group.bymember testusr1 | sed 's/:.*//' | sort" << EOM
  162 grp10
  163 grp11
  164 grp12
  165 grp13
  166 grp14
  167 grp15
  168 grp16
  169 grp17
  170 grp18
  171 grp4
  172 grp5
  173 grp6
  174 grp7
  175 grp8
  176 grp9
  177 testgroup
  178 testgroup2
  179 users
  180 EOM
  181 
  182 check "getent.ldap group.bymember testuser4 | sed 's/:.*//' | sort" << EOM
  183 testgroup
  184 testgroup2
  185 EOM
  186 
  187 check "getent.ldap group | egrep '^(testgroup|users):' | sortgroup" << EOM
  188 testgroup:*:6100:test,testuser4,testusr1
  189 users:*:100:test,testusr1
  190 EOM
  191 
  192 check "getent.ldap group | wc -l" << EOM
  193 23
  194 EOM
  195 
  196 check "getent.ldap group | grep ^largegroup | sortgroup" << EOM
  197 largegroup:*:1005:akraskouskas,alat,ameisinger,bdevera,behrke,bmoldan,btempel,cjody,clouder,cmanno,dbye,dciviello,dfirpo,dgivliani,dgosser,emcquiddy,enastasi,fcunard,gcubbison,gdaub,gdreitzler,ghanauer,gpomerance,gsusoev,gtinnel,gvollrath,gzuhlke,hgalavis,hhaffey,hhydrick,hmachesky,hpaek,hpolk,hsweezer,htomlinson,hzagami,igurwell,ihashbarger,jyeater,kbradbury,khathway,kklavetter,lbuchtel,lgandee,lkhubba,lmauracher,lseehafer,lvittum,mblanchet,mbodley,mciaccia,mjuris,ndipanfilo,nfilipek,nfunchess,ngata,ngullett,nkraker,nriofrio,nroepke,nrybij,oclunes,oebrani,okveton,osaines,otrevor,pdossous,phaye,psowa,purquilla,rkoonz,rlatessa,rworkowski,sdebry,sgurski,showe,slaforge,tabdelal,testusr2,testusr3,tfalconeri,tpaa,uschweyen,utrezize,vchevalier,vdelnegro,vleyton,vmedici,vmigliori,vpender,vwaltmann,wbrettschneide,wselim,wvalcin,wworf,yautin,ykisak,zgingrich,znightingale,zwinterbottom
  198 EOM
  199 
  200 check "getent.ldap group largegroup | sortgroup" << EOM
  201 largegroup:*:1005:akraskouskas,alat,ameisinger,bdevera,behrke,bmoldan,btempel,cjody,clouder,cmanno,dbye,dciviello,dfirpo,dgivliani,dgosser,emcquiddy,enastasi,fcunard,gcubbison,gdaub,gdreitzler,ghanauer,gpomerance,gsusoev,gtinnel,gvollrath,gzuhlke,hgalavis,hhaffey,hhydrick,hmachesky,hpaek,hpolk,hsweezer,htomlinson,hzagami,igurwell,ihashbarger,jyeater,kbradbury,khathway,kklavetter,lbuchtel,lgandee,lkhubba,lmauracher,lseehafer,lvittum,mblanchet,mbodley,mciaccia,mjuris,ndipanfilo,nfilipek,nfunchess,ngata,ngullett,nkraker,nriofrio,nroepke,nrybij,oclunes,oebrani,okveton,osaines,otrevor,pdossous,phaye,psowa,purquilla,rkoonz,rlatessa,rworkowski,sdebry,sgurski,showe,slaforge,tabdelal,testusr2,testusr3,tfalconeri,tpaa,uschweyen,utrezize,vchevalier,vdelnegro,vleyton,vmedici,vmigliori,vpender,vwaltmann,wbrettschneide,wselim,wvalcin,wworf,yautin,ykisak,zgingrich,znightingale,zwinterbottom
  202 EOM
  203 
  204 check "getent.ldap group | grep ^hugegroup | sortgroup" << EOM
  205 hugegroup:*:1006:ablackstock,abortignon,achhor,ademosthenes,adenicola,adishaw,aesbensen,aferge,afredin,afuchs,agarbett,agimm,agordner,ahandy,ajaquess,akertzman,akomsthoeft,akraskouskas,akravetz,alamour,alat,alienhard,amanganelli,amaslyn,amayorga,amccroskey,amcgraw,amckinney,ameisinger,aponcedeleon,apurdon,areid,arosel,ascheno,ascovel,asemons,ashuey,asivley,astrunk,atollefsrud,atonkin,awhitt,aziernicki,badair,baigner,bbeckfield,bbrenton,bcoletta,bcolorado,bdadds,bdaughenbaugh,bdevera,bdominga,behrke,beon,bfishbeck,bgavagan,bguthary,bharnois,bhelverson,bjolly,blovig,bluellen,bmadamba,bmarlin,bmarszalek,bmicklos,bmoling,bouten,bphou,bpinedo,brodgerson,broher,bromano,bscadden,bsibal,bstrede,bswantak,btempel,btheim,bveeneman,bwinterton,bwynes,cabare,carguellez,cbarlup,cbartnick,cbelardo,cbleimehl,cbotdorf,cbourek,cbrechbill,cbrom,ccyganiewicz,cdeckard,cdegravelle,cdickes,cdrumm,cfasone,cflenner,cfleurantin,cgaler,cgalinol,cgaudette,cghianni,charriman,cjody,cjuntunen,ckerska,ckistenmacher,cklem,ckodish,clapenta,clewicki,clouder,cmafnas,cmanno,cmcanulty,cmellberg,cmiramon,cnabzdyk,cnoriego,cpaccione,cpalmios,cparee,cpencil,cpentreath,cpinela,cpluid,critchie,cscullion,csever,csoomaroo,cspilis,cswigert,ctenny,ctetteh,ctuzzo,cwank,cweiss,dasiedu,daubert,dbarriball,dbertels,dblazejewski,dcaltabiano,dciullo,ddeguire,ddigerolamo,denriquez,deshmon,dfirpo,dflore,dfollman,dgiacomazzi,dgivliani,dgosser,dhammontree,dhendon,dhindsman,dholdaway,dlablue,dlanois,dlargo,dledenbach,dlongbotham,dloubier,dmahapatra,dmarchizano,dmcgillen,dminozzi,dnegri,dpebbles,draymundo,dscheurer,dsharr,dsherard,dsteever,dtashjian,dtornow,dtuholski,dwittlinger,dzurek,eaguire,eathey,ebattee,ebeachem,eberkman,ebusk,ecelestin,ecolden,ecordas,ediga,edrinkwater,edurick,egospatrick,egrago,ehathcock,ehindbaugh,ejeppesen,ekalfas,ekenady,ekeuper,eklein,eklunder,ekurter,emanikowski,emargulis,emcquiddy,emehta,eorsten,eparham,epeterson,epoinelli,erathert,erostad,eserrett,esheehan,esonia,esproull,esthill,estockwin,etunby,ewicks,ewilles,ewismer,ewuitschick,eyounglas,eziebert,fagro,faleo,farquette,fbeatrice,fberra,fberyman,fbielecki,fburrough,fcha,fcunard,ffigert,fgoben,fgrashot,fhain,fhalon,fkeef,fmarchi,fmilsaps,fnottage,fparness,fplayfair,fsapien,fsavela,fsirianni,fsplinter,fsunderland,fsymmonds,fthein,fvallian,fvascones,fverfaille,fvinal,fwidhalm,gallanson,gapkin,garchambeault,gbitar,gbolay,gcarlini,gcervantez,gchounlapane,gclapham,gcobane,gconver,gcukaj,gcummer,gcurnutt,gdaub,gdeblasio,gdeyarmond,gdrilling,gearnshaw,gfaire,gfedewa,ggehrke,ggillim,ghann,ghelderman,ghumbles,gishii,gjankowiak,gkerens,glafontaine,gloebs,gmackinder,gmassi,gmilian,gmings,gmoen,gparkersmith,gpomerance,gportolese,greiff,gsantella,gschaumburg,gshrode,gtinnel,guresti,gvollrath,gwaud,habby,hbastidos,hbetterman,hbickford,hbraim,hbrandow,hbrehmer,hbukovsky,hcafourek,hcarrizal,hchaviano,hcintron,hcowles,hcusta,hdoiel,hdyner,hfludd,hgalavis,hhaffey,hhagee,hhartranft,hholyfield,hhysong,hkarney,hkinderknecht,hkippes,hkohlmeyer,hlauchaire,hlemon,hlichota,hliverman,hloftis,hlynema,hmateer,hmatonak,hmiazga,hmogush,hmuscaro,hpalmquist,hpimpare,hpolintan,hrapisura,hrenart,hriech,hsabol,hschelb,hschoepfer,hspiry,hstreitnatter,hsweezer,htilzer,htomlinson,htsuha,hvannette,hveader,hwestermark,hwoodert,hzagami,hzinda,iambrosino,ibeto,ibreitbart,ibuzo,ibyles,ichewning,icoard,ideveyra,ienglert,igizzi,ihalford,ihanneman,ihegener,ihernan,iherrarte,ihimmelwright,ihoa,iiffert,ikadar,ikulbida,ilacourse,ilamberth,ilawbaugh,ileaman,ilevian,imarungo,imcbay,imensah,imicthell,imillin,imuehl,inarain,iogasawara,iroiger,iseipel,isowder,isplonskowski,istallcup,istarring,isteinlicht,ithum,ivanschaack,iweibe,iyorgey,iyorks,jamber,jappleyard,jbielicki,jbjorkman,jcaroll,jdodge,jeuresti,jeverton,jglotzbecker,jherkenratt,jholzmiller,jjumalon,jkimpton,jknight,jlebouf,jlunney,jmartha,jmarugg,jmatty,joligee,jquicksall,jrees,jreigh,jroman,jscheitlin,jseen,jsegundo,jsenavanh,jskafec,jspohn,jsweezy,jvillaire,jwinterton,jzych,kaanerud,kalguire,kbarnthouse,kbartolet,kbattershell,kbrevitz,kbrugal,kcofrancesco,kcomparoni,kconkey,kdevincent,kepps,kfaure,kfend,kgarced,kgremminger,khartness,kheadlon,khovanesian,kjoslyn,klitehiser,klundsten,klurie,kmallach,kmandolfo,kmarzili,kmayoras,kmcardle,kmcguire,kmedcaf,kmeester,kmisove,kmoesch,kmosko,kmuros,kolexa,kottomaniello,kpalka,kpannunzio,kpenale,kpuebla,krahman,kseisler,kshippy,ksiering,ksollitto,ksparling,kstachurski,kthede,ktoni,ktriblett,ktuccio,ktuner,kwidrick,kwinterling,kwirght,laksamit,lautovino,lbanco,lbassin,lbove,lbuchtel,lcanestrini,lcaudell,lcavez,lcocherell,lcoulon,lcremer,leberhardt,lfarraj,lfichtner,lgadomski,lgandee,lgradilla,lhuggler,limbrogno,ljomes,lkimel,llarmore,llasher,lmadruga,lmauracher,lmcgeary,lmichaud,lmuehlberger,lnormand,lparrish,lpeagler,lpintor,lpitek,lpondexter,lrandall,lringuette,lschenkelberg,lschnorbus,lschollmeier,lseabold,lseehafer,lshilling,lsivic,lsobrino,lsous,lspielvogel,lvaleriano,lvanconant,lwedner,lyoula,mallmand,maustine,mbeagley,mbodley,mbravata,mcampagnone,mcaram,mcashett,mcasida,mcoch,mcolehour,mcontreras,mdanos,mdecourcey,mdedon,mdickinson,mdimaio,mdoering,mdyce,meconomides,mespinel,mfaeth,mfeil,mferandez,mfitzherbert,mgavet,mgayden,mground,mheilbrun,mhollings,mjeon,mkibler,mkofoed,mlaverde,mlenning,mlinak,mlinardi,mmangiamele,mmattu,mmcchristian,mmerriwether,mmesidor,mneubacher,moller,moser,mpanahon,mpark,mpellew,mpilon,mpizzaro,mpytko,mquigg,mredd,mrizer,mruppel,mrydelek,mskeele,mstirn,mswogger,mtanzi,mtintle,mvanbergen,mvanpelt,mvas,mvedder,mviverette,myokoyama,nagerton,nasmar,nbuford,nbugtong,ncermeno,nchrisman,nciucci,ndesautels,ndrumgole,nedgin,nendicott,nerbach,nevan,nforti,nfunchess,ngiesler,nglathar,ngrowney,ngullett,nhayer,nhelfinstine,nhija,ninnella,njordon,nkempon,nkubley,nlainhart,nlatchaw,nlemma,nlinarez,nlohmiller,nmccolm,nmoren,nnamanworth,nnickel,nousdahl,nphan,nramones,nranck,nridinger,nriofrio,nrybij,nrysavy,nschmig,nsiemonsma,nslaby,nspolar,nvyhnal,nwescott,nwiker,oahyou,oalthouse,obeaufait,obenallack,obercier,obihl,ocalleo,ochasten,oclunes,oconerly,ocrabbs,oebrani,ofelcher,ohatto,ohearl,ohedlund,ohoffert,ohove,ojerabek,okave,okveton,omalvaez,omasone,omatula,omcdaid,oolivarez,oosterhouse,opeet,opizzuti,opoch,oport,opuglisi,oreiss,osaber,oscarpello,oshough,ovibbert,owhelchel,owhitelow,pahles,pbascom,pbeckerdite,pbiggart,pbondroff,pbrentano,pcaposole,pcornn,pdauterman,pdech,pdischinger,pduitscher,pdulac,pdurando,pfavolise,pgiegerich,pgreenier,pgrybel,phalkett,pheathcock,phyer,pmineo,pminnis,ppedraja,ppeper,pphuaphes,prepasky,prowena,psabado,psalesky,pschrayter,psharits,psiroky,psundeen,pthornberry,ptoenjes,ptraweek,purquilla,pvierthaler,pvirelli,pviviani,pwademan,pwashuk,pwetherwax,pwhitmire,pwohlenhaus,pwutzke,qhanly,ralspach,rbernhagen,rbillingsly,rbloomstrand,rbrisby,rcheshier,rchevrette,rdubs,rdubuisson,redling,rfassinger,rfauerbach,rfidel,rginer,rgoonez,rgramby,rgriffies,rguinane,rheinzmann,rkraszewski,rlambertus,rlatessa,rlosinger,rmandril,rmcstay,rnordby,rpastorin,rpikes,rpinilla,rpitter,rramirez,rrasual,rschkade,rtole,rtooker,saben,sackles,sarndt,saycock,sbemo,sbettridge,sbloise,sbonnie,sbrabyn,scocuzza,sdebry,senrico,sestergard,sgefroh,sgirsh,sgropper,sgunder,sgurski,shaith,sherzberg,showe,sjankauskas,skanjirathinga,skoegler,slaningham,slaudeman,slerew,smccaie,smillian,smullowney,snotari,spolmer,srees,srubenfield,sscheiern,sskone,sskyers,sspagnuolo,sstough,sstuemke,svandewalle,svielle,svogler,svongal,swoodie,tabdelal,tairth,tbagne,tbattista,tboxx,tcacal,tcossa,tcrissinger,tdonathan,teliades,tfalconeri,tfetherston,tgelen,tgindhart,tguinnip,tharr,thelfritz,thoch,thynson,tkeala,tkelly,tkhora,tlana,tlowers,tmalecki,tmarkus,tmccaffity,tmccamish,tmcmickle,tmelland,tmorr,tmurata,tmysinger,tnaillon,tnitzel,tpaa,tplatko,tredfearn,tsablea,tsann,tschnepel,tsearle,tsepulueda,tsowells,tstalworth,tvehrs,tvrooman,tyounglas,ualway,uazatyan,ubenken,ubieniek,ubynum,udatu,uednilao,ueriks,uflander,ugerpheide,ugreenberg,uhayakawa,uholecek,ulanigan,umarbury,umosser,upater,upellam,uransford,urosentrance,uschweyen,usevera,uslavinski,uspittler,uvanmatre,uwalpole,uweyand,vbaldasaro,vbigalow,vbonder,vburton,vchevalier,vcrofton,vdesir,vdolan,veisenhardt,vemily,venfort,vfeigel,vglidden,vkrug,vlubic,vmaynard,vmedici,vnazzal,vnery,vpeairs,vpender,vpiraino,vrodick,vrunyon,vsefcovic,vstirman,vtowell,vtresch,vtrumpp,vwabasha,vwaltmann,vwisinger,vwokwicz,wbrill,wclokecloak,wconces,wconstantino,wcreggett,wdagrella,wdevenish,wdovey,wenglander,werrick,wesguerra,wganther,wkhazaleh,wleiva,wlynch,wmailey,wmendell,wnunziata,wottesen,wselim,wstjean,wtruman,wvalcin,wvermeulen,xeppley,xlantey,xrahaim,yautin,ycerasoli,ycobetto,ycostaneda,yduft,yeven,yfrymoyer,ygockel,yhenriques,ykimbel,yolivier,yschmuff,ysnock,yvdberg,zanderlik,zborgmeyer,zbuscaglia,zculp,zfarler,zhaulk,zkutchera,zmeeker,zneeb,zratti,zscammahorn,zvagt,zwinterbottom
  206 EOM
  207 
  208 check "getent.ldap group hugegroup | sortgroup" << EOM
  209 hugegroup:*:1006:ablackstock,abortignon,achhor,ademosthenes,adenicola,adishaw,aesbensen,aferge,afredin,afuchs,agarbett,agimm,agordner,ahandy,ajaquess,akertzman,akomsthoeft,akraskouskas,akravetz,alamour,alat,alienhard,amanganelli,amaslyn,amayorga,amccroskey,amcgraw,amckinney,ameisinger,aponcedeleon,apurdon,areid,arosel,ascheno,ascovel,asemons,ashuey,asivley,astrunk,atollefsrud,atonkin,awhitt,aziernicki,badair,baigner,bbeckfield,bbrenton,bcoletta,bcolorado,bdadds,bdaughenbaugh,bdevera,bdominga,behrke,beon,bfishbeck,bgavagan,bguthary,bharnois,bhelverson,bjolly,blovig,bluellen,bmadamba,bmarlin,bmarszalek,bmicklos,bmoling,bouten,bphou,bpinedo,brodgerson,broher,bromano,bscadden,bsibal,bstrede,bswantak,btempel,btheim,bveeneman,bwinterton,bwynes,cabare,carguellez,cbarlup,cbartnick,cbelardo,cbleimehl,cbotdorf,cbourek,cbrechbill,cbrom,ccyganiewicz,cdeckard,cdegravelle,cdickes,cdrumm,cfasone,cflenner,cfleurantin,cgaler,cgalinol,cgaudette,cghianni,charriman,cjody,cjuntunen,ckerska,ckistenmacher,cklem,ckodish,clapenta,clewicki,clouder,cmafnas,cmanno,cmcanulty,cmellberg,cmiramon,cnabzdyk,cnoriego,cpaccione,cpalmios,cparee,cpencil,cpentreath,cpinela,cpluid,critchie,cscullion,csever,csoomaroo,cspilis,cswigert,ctenny,ctetteh,ctuzzo,cwank,cweiss,dasiedu,daubert,dbarriball,dbertels,dblazejewski,dcaltabiano,dciullo,ddeguire,ddigerolamo,denriquez,deshmon,dfirpo,dflore,dfollman,dgiacomazzi,dgivliani,dgosser,dhammontree,dhendon,dhindsman,dholdaway,dlablue,dlanois,dlargo,dledenbach,dlongbotham,dloubier,dmahapatra,dmarchizano,dmcgillen,dminozzi,dnegri,dpebbles,draymundo,dscheurer,dsharr,dsherard,dsteever,dtashjian,dtornow,dtuholski,dwittlinger,dzurek,eaguire,eathey,ebattee,ebeachem,eberkman,ebusk,ecelestin,ecolden,ecordas,ediga,edrinkwater,edurick,egospatrick,egrago,ehathcock,ehindbaugh,ejeppesen,ekalfas,ekenady,ekeuper,eklein,eklunder,ekurter,emanikowski,emargulis,emcquiddy,emehta,eorsten,eparham,epeterson,epoinelli,erathert,erostad,eserrett,esheehan,esonia,esproull,esthill,estockwin,etunby,ewicks,ewilles,ewismer,ewuitschick,eyounglas,eziebert,fagro,faleo,farquette,fbeatrice,fberra,fberyman,fbielecki,fburrough,fcha,fcunard,ffigert,fgoben,fgrashot,fhain,fhalon,fkeef,fmarchi,fmilsaps,fnottage,fparness,fplayfair,fsapien,fsavela,fsirianni,fsplinter,fsunderland,fsymmonds,fthein,fvallian,fvascones,fverfaille,fvinal,fwidhalm,gallanson,gapkin,garchambeault,gbitar,gbolay,gcarlini,gcervantez,gchounlapane,gclapham,gcobane,gconver,gcukaj,gcummer,gcurnutt,gdaub,gdeblasio,gdeyarmond,gdrilling,gearnshaw,gfaire,gfedewa,ggehrke,ggillim,ghann,ghelderman,ghumbles,gishii,gjankowiak,gkerens,glafontaine,gloebs,gmackinder,gmassi,gmilian,gmings,gmoen,gparkersmith,gpomerance,gportolese,greiff,gsantella,gschaumburg,gshrode,gtinnel,guresti,gvollrath,gwaud,habby,hbastidos,hbetterman,hbickford,hbraim,hbrandow,hbrehmer,hbukovsky,hcafourek,hcarrizal,hchaviano,hcintron,hcowles,hcusta,hdoiel,hdyner,hfludd,hgalavis,hhaffey,hhagee,hhartranft,hholyfield,hhysong,hkarney,hkinderknecht,hkippes,hkohlmeyer,hlauchaire,hlemon,hlichota,hliverman,hloftis,hlynema,hmateer,hmatonak,hmiazga,hmogush,hmuscaro,hpalmquist,hpimpare,hpolintan,hrapisura,hrenart,hriech,hsabol,hschelb,hschoepfer,hspiry,hstreitnatter,hsweezer,htilzer,htomlinson,htsuha,hvannette,hveader,hwestermark,hwoodert,hzagami,hzinda,iambrosino,ibeto,ibreitbart,ibuzo,ibyles,ichewning,icoard,ideveyra,ienglert,igizzi,ihalford,ihanneman,ihegener,ihernan,iherrarte,ihimmelwright,ihoa,iiffert,ikadar,ikulbida,ilacourse,ilamberth,ilawbaugh,ileaman,ilevian,imarungo,imcbay,imensah,imicthell,imillin,imuehl,inarain,iogasawara,iroiger,iseipel,isowder,isplonskowski,istallcup,istarring,isteinlicht,ithum,ivanschaack,iweibe,iyorgey,iyorks,jamber,jappleyard,jbielicki,jbjorkman,jcaroll,jdodge,jeuresti,jeverton,jglotzbecker,jherkenratt,jholzmiller,jjumalon,jkimpton,jknight,jlebouf,jlunney,jmartha,jmarugg,jmatty,joligee,jquicksall,jrees,jreigh,jroman,jscheitlin,jseen,jsegundo,jsenavanh,jskafec,jspohn,jsweezy,jvillaire,jwinterton,jzych,kaanerud,kalguire,kbarnthouse,kbartolet,kbattershell,kbrevitz,kbrugal,kcofrancesco,kcomparoni,kconkey,kdevincent,kepps,kfaure,kfend,kgarced,kgremminger,khartness,kheadlon,khovanesian,kjoslyn,klitehiser,klundsten,klurie,kmallach,kmandolfo,kmarzili,kmayoras,kmcardle,kmcguire,kmedcaf,kmeester,kmisove,kmoesch,kmosko,kmuros,kolexa,kottomaniello,kpalka,kpannunzio,kpenale,kpuebla,krahman,kseisler,kshippy,ksiering,ksollitto,ksparling,kstachurski,kthede,ktoni,ktriblett,ktuccio,ktuner,kwidrick,kwinterling,kwirght,laksamit,lautovino,lbanco,lbassin,lbove,lbuchtel,lcanestrini,lcaudell,lcavez,lcocherell,lcoulon,lcremer,leberhardt,lfarraj,lfichtner,lgadomski,lgandee,lgradilla,lhuggler,limbrogno,ljomes,lkimel,llarmore,llasher,lmadruga,lmauracher,lmcgeary,lmichaud,lmuehlberger,lnormand,lparrish,lpeagler,lpintor,lpitek,lpondexter,lrandall,lringuette,lschenkelberg,lschnorbus,lschollmeier,lseabold,lseehafer,lshilling,lsivic,lsobrino,lsous,lspielvogel,lvaleriano,lvanconant,lwedner,lyoula,mallmand,maustine,mbeagley,mbodley,mbravata,mcampagnone,mcaram,mcashett,mcasida,mcoch,mcolehour,mcontreras,mdanos,mdecourcey,mdedon,mdickinson,mdimaio,mdoering,mdyce,meconomides,mespinel,mfaeth,mfeil,mferandez,mfitzherbert,mgavet,mgayden,mground,mheilbrun,mhollings,mjeon,mkibler,mkofoed,mlaverde,mlenning,mlinak,mlinardi,mmangiamele,mmattu,mmcchristian,mmerriwether,mmesidor,mneubacher,moller,moser,mpanahon,mpark,mpellew,mpilon,mpizzaro,mpytko,mquigg,mredd,mrizer,mruppel,mrydelek,mskeele,mstirn,mswogger,mtanzi,mtintle,mvanbergen,mvanpelt,mvas,mvedder,mviverette,myokoyama,nagerton,nasmar,nbuford,nbugtong,ncermeno,nchrisman,nciucci,ndesautels,ndrumgole,nedgin,nendicott,nerbach,nevan,nforti,nfunchess,ngiesler,nglathar,ngrowney,ngullett,nhayer,nhelfinstine,nhija,ninnella,njordon,nkempon,nkubley,nlainhart,nlatchaw,nlemma,nlinarez,nlohmiller,nmccolm,nmoren,nnamanworth,nnickel,nousdahl,nphan,nramones,nranck,nridinger,nriofrio,nrybij,nrysavy,nschmig,nsiemonsma,nslaby,nspolar,nvyhnal,nwescott,nwiker,oahyou,oalthouse,obeaufait,obenallack,obercier,obihl,ocalleo,ochasten,oclunes,oconerly,ocrabbs,oebrani,ofelcher,ohatto,ohearl,ohedlund,ohoffert,ohove,ojerabek,okave,okveton,omalvaez,omasone,omatula,omcdaid,oolivarez,oosterhouse,opeet,opizzuti,opoch,oport,opuglisi,oreiss,osaber,oscarpello,oshough,ovibbert,owhelchel,owhitelow,pahles,pbascom,pbeckerdite,pbiggart,pbondroff,pbrentano,pcaposole,pcornn,pdauterman,pdech,pdischinger,pduitscher,pdulac,pdurando,pfavolise,pgiegerich,pgreenier,pgrybel,phalkett,pheathcock,phyer,pmineo,pminnis,ppedraja,ppeper,pphuaphes,prepasky,prowena,psabado,psalesky,pschrayter,psharits,psiroky,psundeen,pthornberry,ptoenjes,ptraweek,purquilla,pvierthaler,pvirelli,pviviani,pwademan,pwashuk,pwetherwax,pwhitmire,pwohlenhaus,pwutzke,qhanly,ralspach,rbernhagen,rbillingsly,rbloomstrand,rbrisby,rcheshier,rchevrette,rdubs,rdubuisson,redling,rfassinger,rfauerbach,rfidel,rginer,rgoonez,rgramby,rgriffies,rguinane,rheinzmann,rkraszewski,rlambertus,rlatessa,rlosinger,rmandril,rmcstay,rnordby,rpastorin,rpikes,rpinilla,rpitter,rramirez,rrasual,rschkade,rtole,rtooker,saben,sackles,sarndt,saycock,sbemo,sbettridge,sbloise,sbonnie,sbrabyn,scocuzza,sdebry,senrico,sestergard,sgefroh,sgirsh,sgropper,sgunder,sgurski,shaith,sherzberg,showe,sjankauskas,skanjirathinga,skoegler,slaningham,slaudeman,slerew,smccaie,smillian,smullowney,snotari,spolmer,srees,srubenfield,sscheiern,sskone,sskyers,sspagnuolo,sstough,sstuemke,svandewalle,svielle,svogler,svongal,swoodie,tabdelal,tairth,tbagne,tbattista,tboxx,tcacal,tcossa,tcrissinger,tdonathan,teliades,tfalconeri,tfetherston,tgelen,tgindhart,tguinnip,tharr,thelfritz,thoch,thynson,tkeala,tkelly,tkhora,tlana,tlowers,tmalecki,tmarkus,tmccaffity,tmccamish,tmcmickle,tmelland,tmorr,tmurata,tmysinger,tnaillon,tnitzel,tpaa,tplatko,tredfearn,tsablea,tsann,tschnepel,tsearle,tsepulueda,tsowells,tstalworth,tvehrs,tvrooman,tyounglas,ualway,uazatyan,ubenken,ubieniek,ubynum,udatu,uednilao,ueriks,uflander,ugerpheide,ugreenberg,uhayakawa,uholecek,ulanigan,umarbury,umosser,upater,upellam,uransford,urosentrance,uschweyen,usevera,uslavinski,uspittler,uvanmatre,uwalpole,uweyand,vbaldasaro,vbigalow,vbonder,vburton,vchevalier,vcrofton,vdesir,vdolan,veisenhardt,vemily,venfort,vfeigel,vglidden,vkrug,vlubic,vmaynard,vmedici,vnazzal,vnery,vpeairs,vpender,vpiraino,vrodick,vrunyon,vsefcovic,vstirman,vtowell,vtresch,vtrumpp,vwabasha,vwaltmann,vwisinger,vwokwicz,wbrill,wclokecloak,wconces,wconstantino,wcreggett,wdagrella,wdevenish,wdovey,wenglander,werrick,wesguerra,wganther,wkhazaleh,wleiva,wlynch,wmailey,wmendell,wnunziata,wottesen,wselim,wstjean,wtruman,wvalcin,wvermeulen,xeppley,xlantey,xrahaim,yautin,ycerasoli,ycobetto,ycostaneda,yduft,yeven,yfrymoyer,ygockel,yhenriques,ykimbel,yolivier,yschmuff,ysnock,yvdberg,zanderlik,zborgmeyer,zbuscaglia,zculp,zfarler,zhaulk,zkutchera,zmeeker,zneeb,zratti,zscammahorn,zvagt,zwinterbottom
  210 EOM
  211 
  212 check "getent.ldap group nstgrp1 | sortgroup" << EOM
  213 nstgrp1:*:800:testusr2
  214 EOM
  215 
  216 check "getent.ldap group nstgrp2 | sortgroup" << EOM
  217 nstgrp2:*:801:testusr2,testusr3
  218 EOM
  219 
  220 check "getent.ldap group nstgrp3 | sortgroup" << EOM
  221 nstgrp3:*:802:testusr2,testusr3
  222 EOM
  223 
  224 check "getent.ldap group.bymember testusr2 | sed 's/:.*//' | sort" << EOM
  225 largegroup
  226 nstgrp1
  227 nstgrp2
  228 nstgrp3
  229 testgroup2
  230 EOM
  231 
  232 check "getent.ldap group.bymember testusr3 | sed 's/:.*//' | sort" << EOM
  233 largegroup
  234 nstgrp2
  235 nstgrp3
  236 EOM
  237 
  238 ###########################################################################
  239 
  240 echo "test_ldapcmds.sh: testing hosts..."
  241 
  242 check "getent.ldap hosts testhost" << EOM
  243 192.0.2.123        testhost testhostalias
  244 EOM
  245 
  246 check "getent.ldap hosts testhostalias" << EOM
  247 192.0.2.123        testhost testhostalias
  248 EOM
  249 
  250 # check hostname with different case
  251 check "getent.ldap hosts TESTHOST" << EOM
  252 192.0.2.123        testhost testhostalias
  253 EOM
  254 
  255 check "getent.ldap hosts 192.0.2.123" << EOM
  256 192.0.2.123        testhost testhostalias
  257 EOM
  258 
  259 check "getent.ldap hosts | grep testhost | sort" << EOM
  260 192.0.2.123        testhost testhostalias
  261 192.0.2.124        testhost2
  262 192.0.2.126        testhost4
  263 2001:db8::7e27:ac1d testhost4
  264 2001:db8::dead:beef testhost2
  265 2001:db8::feed:c0de testhost3
  266 EOM
  267 
  268 check "getent.ldap hosts 2001:db8::dead:beef | sort" << EOM
  269 192.0.2.124     testhost2
  270 2001:db8::dead:beef testhost2
  271 EOM
  272 
  273 check "getent.ldap hostsv4 testhost2" << EOM
  274 192.0.2.124     testhost2
  275 EOM
  276 
  277 check "getent.ldap hostsv6 testhost2" << EOM
  278 2001:db8::dead:beef testhost2
  279 EOM
  280 
  281 check "getent.ldap hostsv4 192.0.2.124" << EOM
  282 192.0.2.124     testhost2
  283 EOM
  284 
  285 check "getent.ldap hostsv6 2001:db8::dead:beef" << EOM
  286 2001:db8::dead:beef testhost2
  287 EOM
  288 
  289 check "getent.ldap hostsv4 2001:db8::dead:beef" << EOM
  290 EOM
  291 
  292 check "getent.ldap hostsv6 192.0.2.124" << EOM
  293 EOM
  294 
  295 ###########################################################################
  296 
  297 echo "test_ldapcmds.sh: testing netgroup..."
  298 
  299 # check netgroup lookup of test netgroup
  300 check "getent.ldap netgroup tstnetgroup" << EOM
  301 tstnetgroup          ( , testusr1, ) (noot, , )
  302 EOM
  303 
  304 # check netgroup lookup with different case
  305 check "getent.ldap netgroup TSTNETGROUP" << EOM
  306 EOM
  307 
  308 # check netgroup lookup of test netgroup without recursion
  309 check "getent.ldap netgroup.norec tstnetgroup" << EOM
  310 tstnetgroup     tst3netgroup tst2netgroup (, testusr1, )
  311 EOM
  312 
  313 ###########################################################################
  314 
  315 echo "test_ldapcmds.sh: testing networks..."
  316 
  317 check "getent.ldap networks testnet" << EOM
  318 testnet               192.0.2.0
  319 EOM
  320 
  321 # check network name with different case
  322 check "getent.ldap networks TESTNET" << EOM
  323 testnet               192.0.2.0
  324 EOM
  325 
  326 check "getent.ldap networks 192.0.2.0" << EOM
  327 testnet               192.0.2.0
  328 EOM
  329 
  330 check "getent.ldap networks | grep testnet" << EOM
  331 testnet               192.0.2.0
  332 EOM
  333 
  334 ###########################################################################
  335 
  336 echo "test_ldapcmds.sh: testing passwd..."
  337 
  338 check "getent.ldap passwd ecolden | sed 's/:[x*]:/:x:/'" << EOM
  339 ecolden:x:5972:1000:Estelle Colden:/home/ecolden:/bin/bash
  340 EOM
  341 
  342 check "getent.ldap passwd testusr1 | sed 's/:[x*]:/:x:/'" << EOM
  343 testusr1:x:1007:100:Arthur de Jong:/home/testusr1:/bin/bash
  344 EOM
  345 
  346 # check username with different case
  347 check "getent.ldap passwd TESTUSR1" << EOM
  348 EOM
  349 
  350 check "getent.ldap passwd 4089 | sed 's/:[x*]:/:x:/'" << EOM
  351 jguzzetta:x:4089:1000:Josephine Guzzetta:/home/jguzzetta:/bin/bash
  352 EOM
  353 
  354 # count the number of passwd entries in the 4000-5999 range
  355 check "getent.ldap passwd | grep -c ':[x*]:[45][0-9][0-9][0-9]:'" << EOM
  356 2000
  357 EOM
  358 
  359 ###########################################################################
  360 
  361 echo "test_ldapcmds.sh: testing protocols..."
  362 
  363 check "getent.ldap protocols protfoo" << EOM
  364 protfoo               253 protfooalias
  365 EOM
  366 
  367 check "getent.ldap protocols protfooalias" << EOM
  368 protfoo               253 protfooalias
  369 EOM
  370 
  371 # check protocol with different case
  372 check "getent.ldap protocols PROTFOO" << EOM
  373 EOM
  374 
  375 # test protocol alias with different case
  376 check "getent.ldap protocols PROTFOOALIAS" << EOM
  377 EOM
  378 
  379 check "getent.ldap protocols 253" << EOM
  380 protfoo               253 protfooalias
  381 EOM
  382 
  383 check "getent.ldap protocols | grep protfoo" << EOM
  384 protfoo               253 protfooalias
  385 EOM
  386 
  387 ###########################################################################
  388 
  389 echo "test_ldapcmds.sh: testing rpc..."
  390 
  391 check "getent.ldap rpc rpcfoo" << EOM
  392 rpcfoo          160002  rpcfooalias
  393 EOM
  394 
  395 check "getent.ldap rpc rpcfooalias" << EOM
  396 rpcfoo          160002  rpcfooalias
  397 EOM
  398 
  399 # test rpc name with different case
  400 check "getent.ldap rpc RPCFOO" << EOM
  401 EOM
  402 
  403 check "getent.ldap rpc 160002" << EOM
  404 rpcfoo          160002  rpcfooalias
  405 EOM
  406 
  407 check "getent.ldap rpc | grep rpcfoo" << EOM
  408 rpcfoo          160002  rpcfooalias
  409 EOM
  410 
  411 ###########################################################################
  412 
  413 echo "test_ldapcmds.sh: testing services..."
  414 
  415 check "getent.ldap services foosrv" << EOM
  416 foosrv                15349/tcp
  417 EOM
  418 
  419 check "getent.ldap services foosrv/tcp" << EOM
  420 foosrv                15349/tcp
  421 EOM
  422 
  423 check "getent.ldap services foosrv/udp" << EOM
  424 EOM
  425 
  426 # check with different case
  427 check "getent.ldap services FOOSRV" << EOM
  428 EOM
  429 
  430 # check protocol name case sensitivity (TCP is commonly an alias)
  431 check "getent.ldap services foosrv/tCp" << EOM
  432 EOM
  433 
  434 check "getent.ldap services 15349/tcp" << EOM
  435 foosrv                15349/tcp
  436 EOM
  437 
  438 check "getent.ldap services 15349/udp" << EOM
  439 EOM
  440 
  441 check "getent.ldap services barsrv | sort" << EOM
  442 barsrv                15350/tcp
  443 barsrv                15350/udp
  444 EOM
  445 
  446 check "getent.ldap services barsrv/tcp" << EOM
  447 barsrv                15350/tcp
  448 EOM
  449 
  450 check "getent.ldap services barsrv/udp" << EOM
  451 barsrv                15350/udp
  452 EOM
  453 
  454 check "getent.ldap services | egrep '(foo|bar)srv' | sort" << EOM
  455 barsrv                15350/tcp
  456 barsrv                15350/udp
  457 foosrv                15349/tcp
  458 EOM
  459 
  460 check "getent.ldap services sssin" << EOM
  461 sssin                 5000/tcp SSSIN
  462 EOM
  463 
  464 check "getent.ldap services SSSIN" << EOM
  465 sssin                 5000/tcp SSSIN
  466 EOM
  467 
  468 check "getent.ldap services | sort" << EOM
  469 barsrv                15350/tcp
  470 barsrv                15350/udp
  471 foosrv                15349/tcp
  472 sssin                 5000/tcp SSSIN
  473 EOM
  474 
  475 ###########################################################################
  476 
  477 echo "test_ldapcmds.sh: testing shadow..."
  478 
  479 # function to remove the password field from output
  480 rmpasswd() {
  481   sed 's/^\([^:]*\):[^:]*:/\1:*:/'
  482 }
  483 
  484 check "getent.ldap shadow ecordas | rmpasswd" << EOM
  485 ecordas:*::::7:2::0
  486 EOM
  487 
  488 check "getent.ldap shadow adishaw | rmpasswd" << EOM
  489 adishaw:*:12302:::7:2::0
  490 EOM
  491 
  492 # check case-sensitivity
  493 check "getent.ldap shadow ADISHAW" << EOM
  494 EOM
  495 
  496 # check if the names of users match between passwd and shadow
  497 getent_ldap passwd | sed 's/:.*//' | sort | \
  498   check "getent.ldap shadow | sed 's/:.*//' | sort"
  499 
  500 ###########################################################################
  501 # determine the result
  502 
  503 if [ $FAIL -eq 0 ]
  504 then
  505   echo "test_ldapcmds.sh: all tests passed"
  506   exit 0
  507 else
  508   echo "test_ldapcmds.sh: $FAIL TESTS FAILED"
  509   exit 1
  510 fi