From 399a165cc32541b7eeef961641d4a6606b694e5b Mon Sep 17 00:00:00 2001 From: Wouter Wijngaards Date: Tue, 15 Apr 2008 08:22:17 +0000 Subject: [PATCH] checkconf better. git-svn-id: file:///svn/unbound/trunk@1047 be551aaa-1e26-0410-a405-d3ace91eadb9 --- doc/Changelog | 4 ++++ smallapp/unbound-checkconf.c | 10 ++++++++-- testdata/07-confroot.tpkg | Bin 1054 -> 1054 bytes 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/Changelog b/doc/Changelog index 35c346c52..ec0724693 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,5 +1,9 @@ 15 April 2008: Wouter - fixup default rc.d pidfile location to /usr/local/etc. + - iana ports updated. + - copyright updated in ldns-testpkts to keep same as in ldns. + - fixup checkconf chroot tests a bit more, chdir must be inside + chroot dir. 14 April 2008: Wouter - got update for parseunbound.pl statistics script from Kai Storbeck. diff --git a/smallapp/unbound-checkconf.c b/smallapp/unbound-checkconf.c index e06855d0d..73aaea300 100644 --- a/smallapp/unbound-checkconf.c +++ b/smallapp/unbound-checkconf.c @@ -321,8 +321,14 @@ morechecks(struct config_file* cfg) !is_dir(cfg->chrootdir)) { fatal_exit("bad chroot directory"); } - if(cfg->directory && cfg->directory[0] && - !is_dir(fname_after_chroot(cfg->directory, cfg, 0))) { + if((cfg->chrootdir && cfg->chrootdir[0]) + && (cfg->directory && cfg->directory[0]) + && strncmp(cfg->chrootdir, cfg->directory, + strlen(cfg->chrootdir)) != 0) { + fatal_exit("chdir directory '%s' not inside the chroot " + "directory '%s'", cfg->directory, cfg->chrootdir); + } + if(cfg->directory && cfg->directory[0] && !is_dir(cfg->directory)) { fatal_exit("bad chdir directory"); } if( (cfg->chrootdir && cfg->chrootdir[0]) || diff --git a/testdata/07-confroot.tpkg b/testdata/07-confroot.tpkg index 435aedff09f47820cb18b90916e9b57d6ddb5f96..e25b089baeca0301af5fa82d908f448ed67daaef 100644 GIT binary patch literal 1054 zc-jFT1mXK1iwFRwWCTb61MOK`Z`w!{&MWgPj%?IEd9b;*-gZ|hNt9L9G}=Vll~yZd zum_j|W6K_w_TTRr+fYmiDUl&W^?}6rT<7wgZ;Y^emKVrj6auajN7 z?ZP#e6UVV_$L=JP{-zW?u7%&*vtyRfqJf3kz>*y7-}GuoQsdq@0K*HCsSgsVF|V0L8EF416gXrk2=SPL-_tBK zWz;us&OcrdEcpd#k<>D7b)k-9BsGlYo=OR^o)4j>hbL18uj`M5)I#CwX}MrD5;+JG z=~Gl;S)IxnBk3ad8R=$wY+aq_ZDi)by17v>d$^*tX)wymVT*)`qNvb%6=82#OyXKZ zR_?LLp4u`~I&EXKdt*2EAKh|4?pqW7EiU+JMIqUmQ(>su(A?(TSodz_-g-9?bwf7c zkRFpM;xd3xxViyG(*@3UJf@N>Y9JyC>&)_i4ZiT_6`X?8>`@zE4u;+nOQCkWRQ z-XM?J;H$H2tv6WKyS&l$yq~D&@rQ zI;4(dwP;%F`(xIU9v)zv{xTvME*Nh05lzTg_#Al~@rW?=3sjV)`1l?i&6B1HSLgrS z!Yw|oJ)WhECFNB#b^J87EBc&$ps!gX`WhAdD){XNzt*GSXW;W?0e!Sg_?dgcpZSac zXdW8^_j3HUACExesSaQBK=ii}t;flK8^QVv;MXY)e!BtBEaBWe=&`#aN;ko7BS!Xc z?jAqty5$|a<-l&I^Y*aE?ZJRo!g+iA$m^B(edF+qcQoHLj*j!5!BP7P*Mp>b``7#B Ysgg=6sicxhDtRjTAMFU10{|!h0EtE&hyVZp literal 1054 zc-jFT1mXK1iwFQOZv#jG1MOM=Z`wu_&#&BH@noa+Cm%MLxbxag8A+6>Y8oxkHffra z!#?0fI9v9)wEz9y*@niHI3+TaD7*m1@9W*Y&wb7)wr2&A93@etXeg4-(H6u;@%sJz z>bS)fzm?ZqjvNO+kB>dK?;dF{x91)8w=tMi$x_7aq2rSi#O z7M}8$%P>X#*KZg6F80Y)!to|E;hzh13IYSiw3r*~|7tNib|UH7p6cOWL1mi5gZ0n0Lp32Bri0SBBp%vg%c1D{v| zBiuYNpKu96y-u|?;p88%MnGwYs(3o4=tj$kf8o`uMWQu!tdgZ@S*r8$qbLC(3$j6_ zU_&e!<7O3dT$ZW^RH{@=gk1e`_Ri3ysX?$@pc#sTp060^lOe%8e0Lkq!&{POL)-<$ zO{cgaI6lKO1SIwP@IlvWd-9_WF9B!dF zQxp|iuM*r_7L&LZiB)1;#3)`HgxN} zJFDKk(pz^EQ8!{!4*4;eBd!1lh0AMTG+*GN<0+L~Q3DZCS!Y%Ttnr24FX057u19VB zb1?LQSPFv+U2pgu^@e548eg5Iw%%}A@8Vk53%;XXP{yqB)mdumEn@E_t@gLZ-hIrW zSLbjKX|*1;RSK7~4rwDOmO77Ta)5lzTcgdBMr@rW=CD^ygZ z`1l?i&6B1HmuG+9zzsgGJ)NbDCFLDxYX50!FVNR*5Ph8k{0{Kj41T>Q!_UCy%WZL= zxh3?O&j^0zi@=}zbo^}(evhEf+!6V$MeBaD-&(Lf1NikDgWqPrGaEQ{cY5eWM!Sx`y Y-hO%icRI*H4)WvWe@NkT001Na0L=gv*#H0l -- 2.47.2