From d8543591bc24af94e329edf9da7e39553b44f511 Mon Sep 17 00:00:00 2001 From: Willem Toorop Date: Mon, 3 Feb 2014 21:55:24 +0100 Subject: [PATCH] [API 0.384] Include example for getdns_hostname --- spec/getdns-0.383.tgz | Bin 37141 -> 0 bytes spec/getdns-0.384.tgz | Bin 0 -> 38307 bytes spec/getdns_core_only.h | 2 +- spec/index.html | 142 +++++++++++++++++++++++++++++++++++++++- 4 files changed, 140 insertions(+), 4 deletions(-) delete mode 100644 spec/getdns-0.383.tgz create mode 100644 spec/getdns-0.384.tgz diff --git a/spec/getdns-0.383.tgz b/spec/getdns-0.383.tgz deleted file mode 100644 index 37162a1bcb77e0e0a59812c5d7017bccd2952e62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37141 zcmV(#K;*w4iwFRf|L;-&1LQpIQX@x_{@qVeEB`PMAV7m*42o^iyN%VZV@B%AtgQUbtn8VI%!}l~QTN^Z zcZc8oV?IalIXn9i|2#hX@!0;;e7-yG_0Ha%ot>TbVBK-=W;|u= zyQLolB3!?2)AN7Q&&-y;A9>=XJI})4o9=-EK0Q5Ym;cGTTdY-+x>{4*xBQ6k58j7><2!H^XxnjGw!Yq+&D~l_Cw#f#5MiPx!_*^ zGV`-Q^sjCo+2H<$T?y%?evQDJIGdv=rC7( z`_Re6OLmC3FWfm#rN};feY!q)-{~{Qx%|t)fpaT_$2@;J6)6C)RAhM?Nj8mBrWAP0 zJuekf?wjxPSY{Cq#XjSaXMU6-UHGoJaCjhN79r9sW>f!#i5DIwfsoF@K_B*%*(wkW zsno=|Qg-@^7SCUFVdFXb54N29nK+OMcf~nNQgHzk!Re+v^n=wo3*#uJhZij5>CBG~ zvN$h}bGZb6fDiTPES9>LHL zOX1Jv**TlUfwz&Y3xCkk)bkU3ULy~eqZ*cL)f0L!$%CN&pjCEi>G?!}Uf`LuVxP0l|NPf~ zvktDH-&;U4J|SsM;?xr<>5?DK&KXD_pL+W&Lrq(VH1k~^7*+x?Ro>ze37{M0pig@ONEGV!4g2dxNS+|N6)w-j2B>J zEequHY7*pX8!_d1khKvFj}Q0Q(_Fx#Ac&X18s;mzzhBKl;ITZI!*W6i8_|*W4xMiC zBkRsdh$R8w&Vo2SXWviZYfAyt zrZuy9MQx7CBRAE?Ao>~NJX%~Gm0v+MXb^A{L7;6rvaNXUiS1RuyF5$shN;Ywx08OK zLeA2}B-@>g4f&X*am$(W3h7(X@R(2LYdDxyPIPi~Rb#|c3N9EOQN#G%H(P%fk}k+` zn=a_tdpoWx;RYO>1f+QlbkW<<-9m<@!c84n(m+;)yq6+}&{GFX-%i7Wz_hTbt|^eO-);yua%(nteZ7{kgl8CVDH~WS4&eP!b?bF{8dW^( zpx3*;wxB>G375`n*o^D1xkZ)j%UGG*`Wo<9CA%XkJ{Av>8Y=ZSc?nyUruG z6)LF2mqC?hpZP>ILQ)jHQCMruFv_;KC&Ki^n`*kSa2)@1e0Dap0RGBTpHkp@j_2l7nD@*QP2QhDGY&hQz_-FCb0QI*6y@3j2 z*7PLdy4H*C8$Ljp-H;i!4ILtZ@_vD*!2ln4c}EWRg}H$NV$sh z7S)rs#ee*GdfMx)RlOR*k#u=8D9HJC8M?TNdTYkWx^dKFHZr=F}!D(uL&CbL+$+jz0|u(z0P z1^X$8C(Zg|;co?eL$R~z$Nb<;{-pa^CBN7PyF4W0!@sDG-z4@{*d0rli^u$+JAh^9 zkHu348pAHJ4)3d`+vOpB!6xD5VbZTb_xkrx`?H_p=``fgJ{x&HIP%toVCOki(hHGF z*zBBj)D8?%06}S0@96klhkyaP|1|d{^9+<~3QdG$oP|J98Zj_kcK5+A-h8U49grI1k`Sn_#2YqN7FbB6>`C)AFLQ(a6h0}3HcdtYgIx(y*x{K zD7(}v3Hk4k4owBm@>EENgkqhEr{Y{QDGz|pf#1KzPM6G+Bu+ExuE24?zj&z+e;Vu| z5PEqCs|n;$ttQ4jj)p`Nmi!6O2WOMz$}c_^q{s}d9zawah=8W*4*&FGlvRS6<-7GcZsAvLKG1^F$j( z6Ti8wcx3~8+_C}wya~I$_OOw|6LL>L92hOIB#lG%`0&?FsAkxp;DL<_ArMubFyoVq z6HBo+^9(L+g!3K<@R+rswJaZ2!CKE>=paBhF246c`+Ss}2I?3j>Q-o+IW?pXW8i#q z&{q9`+Vd|NV|)5<`>@2t>XYI96SF^ibcqDdbMO$yr{j!OKdJa57cv{;vG*H0dA_Rv z_Fxwgk>TO0MeKX5`PqZulJazhOEiWo<&os1qqO&){e$mWD_wAk=+F#_=KC~qb}xYY zz)L%LD+j5idpYTAR$LxV`h^heD6B74`U9547!p&a9VQCea5S4kF$5m22$ddN`q^B0 zL?ozdFP9jK921y5X1i6j;8mx}ZsSa-EqOt~rQZ*8ba{RsNpMq$g2Hq3)eMq=x{7og z(=VL!8piA?!`#3Ya_l|^_6TC>0T3M`mpoJm+!57_d^SZv;ZtJGBWLh9ytz4;aAcJi zgL90ONh=PbZNY;)*=JyB4cv5My@6ppkJ!!q;sn>jpQpwHbshA83m$;BGV<-}MnwhW zJP?@ZfXh}rh#nXykoj;uWGC-V-Z?-Gr`1s$9T3SZb~BNwY)9(OI2sRVCMH3EE5O!- z+{9hmel{|hTJTdJXho`30zf_pzXG0gbzwh=D77Umqc|u$rAUI^3~mQbDrT6Kt-9y+cf8 z640nnpi0%gc3(p9{HVy4>|m`Cm;U#ST2=yTO@ou@qbX^TO@Vw@r~;H14~|UN=&dvCBSyt^7ZY!vHUm3?kmr$yj$%y-njx7O z@WQDl(U3w!t_X@uqDaRqF-c_>+E>(>Q+Nwcs3;{0y7YO9RN}^Ylz_59x=Y^2k&?1LqQv!r_#I%t)Kc`LH&09|u?CtGh3Qo7?g2;LE6n8Dn>$yHbf8f2W+R z@OMr{U6GIp_x9IrH@v%j8vX65eh8hh8cFyHi_?bX_HO+6b@=lbu#9dWZ|-g_TsWjd zSw&ij1E60hNby1?d7QT5E%1%M+&o_2J$xCoQVG!*wawm1DW4VERI3cq3&=6DE*pS^ zigpjlR_C6mEHi2=6)l19A85r8_I*9$H!T3HAbYH>LVsHYse#s3kOt|usUZLVmxj7M zh9b&9G*~|QGj8ifoAkV6XBY!;bT6jSqNMaYUUa7W&HltAq>@|JQHw|5xvoR*zMb&xevF$=n$nLu4O;bh+Ck1t`3^p=X z!MZ18d#W7@9vPaa2y?X4lK4jdYnSrCK)l}QQJgnf1vLi>3c78Lqjyz&rg8Q*yEjm4 z4ZlFUo#n5yY%`SnPhDS{4!@{6F zt7Cmp`qZM!mWW1TF z5(;{Cj}i;m2tsU}K4Z2uMIU-|c*kNFlwLw+H3bK3iUJ%dmvcZPi)unuy7poB(P&&+ z)LxKKnoIe#%5ZgcYF9O6%1y}P<_I5Qv6-n$03YAHpo=+uDzh<0c?0d>WsEw#D$UiA zW;xV2pwxE$UF=M;u-s3)fVu$>W4!v#qX2zZ>sDqP)Ea^Jk@cdvoilW8x}b8KYSl}t zu4$8Recv{=7a4$6%W22y(Crj(@p=xdUoM^Hc;?;;BA+M-Wnma=&AI~2U7Q5O#|W6(W2Y8aVY zF4dZ$=9@i1LX8>%^>M@l58(!aNBU~Dg4*8GGLbQClBMzLn>BoIs3nQ@pAKva#a^v9 zTkQikv~vSBZ)~t4-z*T*HubTWWsJqNIPFexD@pz8t3_M~D&49e8Q7}2<|w+SG8}yV z{Bbb+Wjwt5a{qbsG+KXvLXsE(m1wEt#Y;d;slm|wtPbA3*Wh+I`n-N8b96n!Q?^|z z=5tX}1bT?wzO6QYy7@A?`}*|SInA-Ov@kL7Se$2na>vob!`;Ih_M7uE;;-4#Bz~uO zFN5*5?mi#&ti;!Z8TULi?wngW;82D7cw?*ckK9LxX*+szX+q@&jwB`Mh%piVn@V$t^^G~+HH&4H z!dz!b<|w8WQ%zCUl`u>{NDAd0$k{T&R!!rcc z^x+39CFj*Z494SB<{GFWPGTZSTpiuQ3ERja_tM*4UL}h^5MzT5uEW-Yb?}6e)nl zj{y_A+}0Xh!aLg?0`o5oSF6>DBwo#^Aj(xQrW%Qja&B+qAcRTmk?`^kN;gGFwLq=t zVkr_-9Fz*A?8V zhJ7uH(!fN~qQ_u|1Hh);RBdaRUU99$)4l$!WNlyas%DHCyLoLO0267@TaY<8G;d|= zuf7H+ZPcQw;7`SjryjMAKwFlk%#U!aP2V;=Ga%3rWy}@4}cMr>!DZ5 zLCy7t9*>8B?|Vh1HwWt$=;Kt0En^l(yQ(HE$ij2!5`wby)xX~U za(nmd?fB_oaQiqIK9v{tl^Key4(Pl#%wWw%RGij(HnLyfxYw_TlwNDp@_vT|)yA<8 zA4d)~KRT+FZB}%4%km{sFNrufyGjD2uh@=H*bWczJtCDJ(;SK1?Xs)lAMnvj{R!w9 zc6Klq24ENp(!PP|nmZD$ydqn_dC>l*$W0s?4NG zpt1|JroJtU$q~nb7RONO6&btTX#UkG^2vITku<8fCa>I0IN(qMSwDy_neD?$Juin9 zT5S*(xaYJHqh9GzUZDtbAPj}pmd#4vcHotfLx2U5or)(cbCcH zikVd1D^>J`!kt6KBg2Ba6#V{;nlDjpNZX-6zLEz#Wy8{EIKcQpRE(sUK(619H0s;F zyLpNu;W_rc{l0TmPN2v1;#X=#Z^L)2{XS`rgJwyc%VKE6Bp99-Pu(uRd>o%UHB6m{Sl~uT!`o_MNTKtEAEko$}kJ?;P35yYj@j5 zlIVV2{0gk*%#7rf6us@(iO-=WI^jmIA*ndId-w1_BqZU6A{c_SteKPle(TXs0F4Jp z$#$09&6pw@-PP6A)m7E?aJ3iR85krHP!8i{`D!LL^6g1ojpXHg@y~geJmsRr#v|wQC?~WL&>! zM%fvlFEILd!g>2KLI}704vDeKpiR*ip0Zk|JW|YiqQo>Zz>m?SP{7j;Z1#1B8GM*_ zQkRh+bh|6&l7a{Tq7}4UaHDDVLg+zrYGjojvViObHLW~3J&@KR?(Arlw1Xf?Av!wz8%S*Z0|;ZFz_aL_Y#1v3T_C(7 z^*M@n_aGswn=y(h%@d4Lai*JaDr0^a<=UVmR}&NDWR4mn9zga6WLZqhf=TF^VeEP! zQUb}JBEVs^gNPFQOn(@r8W_&-o)O!cmxkS;lp6)WEPXFS#;x3ivQ4= zLbj%v2sRdY64A+0PMpt9BAg6+*yEQN{po6@?w>7dOtm>nN46!-`SVRix?k3r&C+}@ zpJGD7kMB!goiSUhac@#E333_b*dQ;a%`IMJ+eE9D^55bsGEi61tK2j>;W-dZIm^Zb zt!?8t9-4BnX_z;i9I|N4dI|C5geY~l`*v^JKe5gaWyGWGBx#j<5x!4x)&K zGYqXvj!^STv9L*-2^nYT>0o8CGmi6(+lStjZ$k6iBw*kW}Cc!Xw%`Dv%l9X z?NE3pTR0Ru1B8=1%nb!iP{kvcBw=2XuG)b#Vg5^8_0d0XX!KX`*9(5PmrQ4r2v?gM zE$4i_YhW5-!ZWxFhiDbBY*ZMHY-@@{Mz}RT8j@XI;t}^?7w-&m0ZJEQQROWfNyhyh#-B6#BlEu+!pDr;#+C;bN2{w zV)y=_V;rYQqvuYN$%7_|U*}v$HBj+h$qZ)5UMz3Tv0wDquKiMB*tzzM8rivLYL8qO z-$nbT_Tbg`jvC*!cPfmXvwsZvSckQu^Cll}d=M=b%uN1xeYBl)^Rs4n3^t1)QD)n9Q|EH zBulwlNpHrml#`@j*bnWC^B;PYfTZ30$5pe_ZAzSakqkMu+-YgY%JJ`msmM-Y#x^Sy zp-3b_1}W2w4@#$RqwAvENie>nYXe*Ir(QFf1Iu1YRz!hlB(oTK@?MT&A_Hg7yjItf zp#NKl20swE?gRMu_gO41w(f(;Z{h*Y&u}vEI3>vx?N=%Z4U2^hK>MaY&CZZg*N99s zhE*5uiZ$k@YN3-i978ahh&%ylEU*?sHXryQ7?Ot^)5E=eKU1>7CZUQ+PP=#-L5it+ zcGiKEiPwIpMCrWnMxg|u&6lInzPo-4s6>x-f1s`TZ1|c)A?6fc>)%Dg!CD3dIM*Z` zeiWTPiWuM7G)8+I+u|vUA$5z+Q+MG=5p58Wf7}`@A|O27y9hVn7q>lL*K&|hEn?3v zHp-D_2}O3?kd?aH*yvb64iy>#ZG^?NQgnlZJ&=CeQR8cKYsVlgnZ(k}Rwz9X$hbg> zjM(^3*Ex8LkU_T2Miz}Uou=XzD8+_#Wh~5;GUwqeVWlyX5hxpAkZgMRrVJI=w-bup z(Ih~Vuo$0C%<0g1k{q3fJKvND7n{9;_L6tRTT-ZS)rJ$WVpH~*6-F$#oy&BZtkrX# z3og5vy1j_2_zdTG2-kwE&_~#Ii_L+!#A|mBAKh|~T>5HGM_Sbib&V3OC6UtZ!g?XG zDEeMuND^}wRtkB@inEmR?J_h%9$1E$myeCI?R**`kHml4YGExNBDK4`g|j4a7yocJ zU6_BA^!(ZQM+sbCH~+A#@`d_ViRR|uA6ccXL_@B^J=B0X+@r>T)p>^+FrRnS7_%Xcp_)YJ6rjvw|f1wW2NBvu+@qL?4Vr;3<>?&%kt4u;IvZrc*r!ia8#Kw_+ ziXsL?#=?o<9JwGIvcpM|+2t2Rpx35vE=bPX^nWffn9ex^!tWh|F|`BWQVry3o$6-O zUxOw|*q4Vd&J7yFGKOoLe(uV{APU-(n5}k3!cj$mDRfFqscAwd?T{S+Xgy>A5{s<* zvd5AJQ}CPa7|dVHgq12ohRppavmp!byVu$B3^q2BX)vAX+)Sw?cuve!dqD?q^+0lo zMy|Jt(g0=}2ZKQ`9#4BZ6HrmhhhT!XH}dkIh%{!&?6gC38=w1>KU$pC9RQP z!}?y&Zf~g`jMZ3Y>f7Jm^_#Y#jJK7x^R;f$zKz1K_)bL`4&t2nIV-s}<+dVgEJ{&^ zo4m&_Zpo-PGnPje4wy0nr6w`w9xJ+}hCHR@%20ls-V~HJdFrzvKzL_)rMpGXlg~o+ z=id{-;n&$yWkaW4_R7y2jue$XV#*&>OboqKmx0%$-9dmt~#mv z2fIb<{G{1!w$EDUjjrm;@HtPnwg#1fIOJ_Md`!osSVt8)#Qlrh;{M{xWJF|H2MuD% z?~6oOYZl_yUi$?Q%j8)Sy{}=6wP*nU?(H8O9>GENJN~!}U*a*s41erw`rF&v{vYyP zI$F#Fp><>4FEO=9e{BY8(=y1@$)1FiHh(rzS+k4DKFj!@oc4tTLZufnE|E(3K-E)B zgp@hK1eoijU8&t0U*BoTr&yK2WDCRqJ=jN)@K6**CMb!QvAJjisT|G-y-2cnhd0Jd zM**h_SF;mgY#4|=9*4oia2Um<+4ev1J(kYU;KySb6%DA}G!t<{ry~tI5s}AW`vtRU!Hc3Wg^70AHfeYfWhRGn2^~aDoPM@(Dk+Vj{sB!pDAxfmDNB^Ii|w zqEnS7#0W#ylSN1#N8BXwY|@vsPunF?@i?LspL8}62|qP|mD(E+MZ4W;{g7-h z$zg|3)rPiIZRZe;ZEU zNJ}J6di!s;(>Ll^K=X_~K}5M2p1Eo>!FT!OxEThwc;f8g(ZMQ*eN6cDhxqNufq0n@ z#L{4(70&~Kg6}3tuS(a(heql3Vy&799nCm~cBtCQ*M+A5# zX>}T>rxzcZIf--jxA*+EQaj&eYizWIpk#QfogrrJ430veNALKeIvpHClyISQx;`@_ z=7h%NiD)HZvL&$)I=%}h*&?{7M+;>TgUd9NXXB%s+ZL{wiNpdePySPzU^=b3`^nQ6SN(Rry zVo-9Dgud~$v`!_XGYu7zZtg-sFt(w`X-%&}7^J^#SUFog-O(Fi4rZf+aZy1YvV(An zWv<~*teCoY^pY!7Kc-8q8`kvu;8S!zyYI~gV}SQ@7zcwMx+J9Sotx^4O_p6c+}$Jc zIXXPtKYWAs5-QlH_^Bsy>X1=eR9wVsRi!iose&vZY!9UA^*&$H&4wnvyNCdDL z1jIo+6M~)WEl=FLj;2+|*>#Pg=IPa&CtJUgjCDfMp*Abf9e}Ww32T>xVcVl*TV$lb z{A~sqr_1ed2fe)IH4Y5X%5aAF){QziDjS+EKSKOzG>tgp8I_CUsZnMTPS`@V`nFW9 zKEHj^=r%mb`cj)e8)3?>1eCTaKZ1g~$>SpmQG%mXXBgU|DcOC(PCA^A&9dfV!FzcR z;ZZr_tV214Js4MBB%o=#l9tkh`PaPswFIU6;J47jBqt>^52r~Ub`c0zkcmvz2;Ir^ zT;@t8Gq0fMP~{=lWL=%OKR_cqN9t` z1ioOmzF@V!^!_3yy6Ll9LYP^0Sz~wi@Nfr{DTy4KR52#C9(VCb(6Im-MQUxgR6X-x z_A8#ef6Cz)NHj+2L?lFZv`Ket9mofmnTrnO4}59NEJVq#Of)}7@lfXW!67>$d7_ow zR#@R-*5dvdA<8vG`yaW#M0goMi^L#jm79^yZOGBRyMmiRuvWUe zw(n4+-jsr0@^r)J3;_LSIEmF=bu^MrDZpVP&dVwjJV0-Ry_Pc^4hTdM!XmqYaN-MNV*7;$s{^XL}}!^kDupnB4O90PQsDTI9CkG-CWy zQF#Xm7AR)D^Q*IFyLH?Am3p#S`IhXXGc=>8>@qZBY^ySj_d-`36q_NGzta z#UTWanL88>JORQoor|3c8ddmCnezj?zY? z9DYR&&Uhm`J2EE%D(pg>#$wY_iQEvfu`K}Oy!*7DWO{Uc&;L4=`<-iI0~0;IYIj=a zKWK}QpW6_PcM2+56!$vxkS$?hL>yH?WmE#Ra_5mqJCNH)TUN8!Krc6?v#Awk8v*f4 zcA7A+d)0}pWK@wme`Hx;q@yH|=5+c9{{VhD>}7+xQ@(Xs1*nuGsdqEAF4?Y>=p^vA zH+sZ*hp_~*p=^q?U;CyRk+QbWL6LLd6S^8mmST91<%6K~>WVC9+b4xu_`4eZ`n8bUSx!WFA)BfdX{-nlL<2HB(ZSmJ0|PReB`w7XTw{FGliBh9upc zx~V~1v5NvM2h`0BPZpOd=NH}HWwQ<9@0pc>BkQvJz|}eA&5nXf`U~&AJ=j*tDcg8S z7ybuxEju+|HVLj06s@GXLDrQgTep$a1FC{Gc>%`PCNxq~VWB7acL@<>Z_qJ7hCHE=HHw%>_>O9Yc4gfNaI}rtshz#|hUXRX)~Yn>Z?H zl7A`N3-yw*M3KU_>4vW?qv9p$T8d~7MamlWzI|8r$oeLa8x^cij$^E8*wNLo$S}jA zQE|Ob!#R}WA#?S9$th4eP$+mX3SSo)9Blv7JTnT9BKV|L)!cuK!XXth!E5#K76{;@ z1|g|9ESh8r%Y0%+tl#s7SEW9yPcZFZ>nv(2OrydkP2=8*@4_iuI)n?7Az4G;*dQ$g z=E^V^vsQ`%L}#NY(bR+EIUqtvA3j0@qV#9IXpGnFwqt=Ie#rO--TJ7gwQp=g z@k*W~x}DbeyV9<%@s>a7j2J9=9qC_4D3l+bE}&I9u95ftA1CL&nPkgn^~qEW6%2`O zCoV!N=QgEW%J=#_A=w7+df3DlPrTVEc^u&tbM(&;&As?D8+;!)DLX2*l69-dSaHXs zjKGGmfVdb;hN^=wcg4Vhka;PMtEMpyfYtfzLx9D+SX%|&xoNsi@gIa(%2Ydvu%@<0 z@EIl@l%8fo#u46zAMNfP=3-H=WC5jRs3niU0KcB0Yv@p2OuLO?%ZP5ReQ;0KF0Tfl zNvSD&2%$w}`DVIfPnW64Zm)dxJ%ftaJHXcQbGan0mh?-@=Zfb@t>j?uuOrrXclHlA ziWslz@-0rFc^6ptNc0>s}$>q_S?# zdl^i$t%l$=&0f-YIqP5aq85f#?O#?Abn!{;?&B$UA5|uYiBWj85ak+|z+#S@a;J)_ zNQTI+!Xl`l@B@gZ;k|s4GFouCJf*&*y#wSVEvEcH?hG=_+*9oQjnA>^I*MF4K&_$2 z+ZwJeemhz-JqzRrW}dy&2)^NI;MuX7btAe&!E9tx(!a?@T=@cXmIlnC$BqWTOmn4f zk0k^$l<~EWvVEXo5a}2v$yUM)Br?PV2>2l!4sH2bhKkWWjNFKWC?QwcM*Uj#*xuCvG^ zG-Rd7EJVYs-htdZ~^{C};!GoSgdy zy;8Dg7a#tnoI(pT6$M&wS(M|YDtBgD&jcXis@1&SR9S0OC51lBfbK^nkMRumIT=#V zCVUo-H#U{hsWRU%0tA^F3b9w2P55)N32!boVTW|r4*ZmC!gsKVB8nycpl=utws&<_ zOKBi+ZV~&wRw>z>MFgZb<&se7mLL+@aE!g7^$5Qr0X>K6rf)Ok;V7e{UC)^-W|RfF zTr=QqxSNVhS(*=ITLIT%xCh3?pga{l!vP2|lwdUtA)k}*%dl@sN;*ZZoBbPZPG4*@x}7F68f7$d@;mzdNpA)SUA)T5~$T zTmBGfop=1UosJtNLV%g3i_>BHk!eP^4hX@s-UxM<3#-vNiRpIX;0Q-D z0UTiDw0ZtR_eWlRn~ZY$R)@b{0(}K6T*!oV2&YPDoQPxUyTAiFyZL_YFX*I$3GUY3 zq7FTT!(JKE^%b%x&4OvHjQT|E^2lS-vWDai=B;hT*GY_B@lm=Zs#mY^u`Yw4>}w(> z2cEg@qpD9kYx+VkkO2!U1~F;{BPzBNy(#Hf%dYBDl&31>Dj}?8h(vVBLZ6F-OsOny zL$X|z19hsHv5PEZl$EMOPEC4~;6cq2G3}>ZsM!&XO)cyNP0No4d0CxD>INwn6(Wb0 z7+75lNFP9U(6p2kEI=(SVdS_cTo?2SN%t@lRpXay-3NwakOq#6qZ>{wz;{r)fdBDi zSe6JzdF|^v6BBK8(2BxW`6$zCZfemgRh6eO^v4aYtYd2OstJ&+&|G}Wu75Kr~f1U4aa+Uc-S_A z8Abh5iuI@J?RR_)^BX(C%@g`>UY@MI_W#?8rIdNuMfMnenF1>Fn(^(o)z1GP43AvP z)3{Y&r0@Sr#$KA5Mk=fm#$XM?isv*HhwKYGpLT+s>z)42u6{|zj#eM?sNRtK`v(Vy zhet=Qf3Y)$1j9uMJ+^T>2Z|IKD1g=sTcr+bH4TW=D$iz(Yt5tQMypm%BeXzDAf2O$ z-u}JL{!2xNMqwC6Ea*k4g z@~9><9k1me(_kRt7*>0bXFD$!;9ko(fgL%IAA4^r?p?IG4_?07`Suw%_ui||y1QZc zs`R)!&+a}dBFM@INi{;P*_|TbLS_K+0+3Nh)PqKeg>^|`CINydCVN`X|MC8?@*<3E z!`7yKol43)rBoG>e!*~CY3)V|UdjYXN@SC`n|f z;&DjWzeD4t$hw(hvruj_DbvWC98KPimo#mF%9NBc{S{jL-mqW$$X-A(2d z9V7HqkEe`@ zkQnHd$hdoW%H2b#YL+%8#>JpMI*EJJxOemWU}UIg+=8xI&ET_!PwmGZi&HrlKGbWi!Wrg#6+Ck$E#+GDk`( z+@V>Tnto8_sp*E%`y;R7PF@u+bCD3=d$N=O=lwYbvIaczA3pshstFj^bi&4kTfmM0 z$}Q#Qa(pxjY2GQE@~O=j9wtUeiL4?7eTa9FfH*(SQ!3 z*?1u1;#Ck>=_ps{Kb>EEz!;^*d8cvQZC#u@TxQ{TpH8v53|;+GxDZ971FIiWb^#IK zz|K0pxd9_#02L9;D4E`l&}py&fI0O`@Wj>21W!OEH0caxLJr> zipvl5*V0KS9wsqff#Y-Rg|a==L8ywBbHOV2DQP%H0fwlrFcon0PCACV7yuonch>4) zR8YgQoy`FLOjQ;3Ukxblfhh?Tk6oDOEgua!YD-7K8>~gp4M$9*6Yi0FK_*9wk&veX z$Y;&7i}tTYocn4d-GZoon`B8`azm=CmBwnF|J*ojo%AjnZ8QKi9RoI0r@qSPqW3(L z1o2_z)=r1$zC1+r^=4NF!}3jIJC(+n0`1f1YMwBkzH6iBGTum^vYF{O{Po?811wLn z(tTzA;f?OKdxhPOl7YiLAiu}66Mucbuty-ydOg1P*AJH3BYUZ@XB~>oPW!dG1P$C@ zKPrZ@#LZ%2KFcdGQI;kPU{Ai{;uw0oyuX7y^J<2AK|BQG|4zTI9BYPzy5N$ zH1LDJ{;IggTNi#EJ+}SzZ;L5Ee5lpq`PJzuY|@>=PJ_`S-Dp(&@@x?aBp=^&f$13W=K(S&t{}=PAY6CV=SJrzE{i#ehVM#cYF!_ zWv_UbyH`P;9B?GO+S|)LTJ$oL!uX+RD?7!dp;4T)W&z?Gf}tw$WxjSF=dH zqJmyM9rU`iOxP86N#hb!+k;|89gNZJn-loxo@MHlywKj8cqW1bUZ*1IZi4%0=;YnF zX`@dr-kq0+UGvbJ0jBk-PO%`%92B24b8l4{a2ef($uu{$#HMd-XKq)0TXcSW4`T8` z@u5=+-OV^3G6OIe4tOKw2CS~XTy~nrBpn|VA5WzK-U54j2=bG}83fZ02f4?XXZ4cf z7Brq+52Jn$R=K*0)Fy@Ez;*N(QAV=D&>W0jO39d0*!8;1zR}AGOj0LwbUO+#nyN>3 zKr_#)=WdHB;>LCiX0;Q{(>=+`OeGS&8nlLn*aYG8p!oP5g=j~}L_52T4!Bs?(X9rnF)2IDP6#wR}>qk3>qd|D6g`VnT;4}PE3TcCY^{jm7Z zz6+AOUO9)#MV=rtID?p?o#;)1VIJF3rwLLC0usU`AAn>FDb`zrSO_U}=>?c6mO7po zGkPWt>^N+XryWpp4vR$zQ!1TdbhL9}K&FLJWO7y;r^KvP}mWQSx( z)hS$3ojP!F&W82FV%=(ld3|dO-ECr+hsC^mf~QN}p1X}xQWXx1nej9j&Z8_Gqo{aT z%q#nYq`tA^^1Z+QZHdNYXMQg3@Jif@>=ZNK*<7o4g(t@DPBHhI&0$gcfjchdEw^)Y ze0AQrL}_7nr&!FNjnH9Y4oeupT`YwcTOs601pm{E29-xX-QUBJmv9M1?i}%CKhIR` z82jh|$6kW%MT~uPP*}oL9+Byv;tL`Ca3I;IMm`$0o)1xEea} z!?!~vvT7ClV3yGyDL#3-SkB~THgF3?_d&m40Hy9lS%uOoLgD~>K!m?y7&>dTPTwJl z%AA9u;q_Ks28x~Iea&H+pHMUmYIlCsZeiDDd}_X{gt@N^j_HD`L{e@$B_$1+kTUSLafB=RGWdFThS#o zk>M($~7=P1pQ;Bq)dIt5F{*gLsiG} zs+uH}m?G-`=HCJKldX8<4Z`~vJF*g7>u?@Bi=cv>Mnms?%p9(w1g>G6(R5qY$&jU6 zb&XWY#-LppJpx^%?!$laxd?QT-O0}Q5BPNwh}^A@oW=udq6v}93f};=VXA=YVX8YF ze`91yQJEQ}2QrlenHpo_tC%oGMqsHjC7G(eff2oC!OJCj2?ez1vq{1Q{fsxnB>p0> zra)y-u0!Ca6x=ACn_K6Bw z{~$7IbLCvq9hJkNF&7>a3uWe%L@bMXSnHL}*&#u^p1d`JcGl28eu&&{?JcF{_%0b^ z?L&UpAFnCQQNV689Ypc=9fsn5_YJm${apG25^t?HV0r7kfnG^<-T;s&F-o0xGW*ed zHRoMsfBx0^Ri`ODo!38Y`0MK*<7lt}UpE{t-><#><^@(T_Ge?2yVj~Ou_=7GbUwsE zETSl>EVrO%5tB;AW?y`hJImi-*%2P`(6=6rZr0vn*l)kY1n{v*6-Y0_y8IL9*$ut_J@FDC{3y)n9QFyI37nXF< zzCuv_iguix~h}n3f zC^C;zoMY+8IHrQR;#d>?>6&u#)X;3;DW*}p8|zO)2EWvqhCv!KnzWEACZP-7VsL+q zhnNsR##<^mhX+jxL0o$q-Q)sQir^f^li7mbfA5;GtYOzUJ$=_W{;79-advsy>^4jG zLOueNOp*!^B;#|z?9+QG(?In9F7!n`X-xeROem$H2;0%A#q5EcY<+*PgbakzTu2D{ zLu3glyCM}Bdk?<%=zhKazN^aLtp~~4+rRxji&1>SDmVPSRu3?9Nlf&{B=SKt82#-p``^Bq$|y}< zn%g)YSc{a8h`jBUN3%EN&2dwc+(0-7e9cE^T|GyP;o}-gD4a@lOH5Z)JNWAWRsU$p z#V4~vCgIxK|C=k4sxfOpT8m~2k!$YjK?uTK{P+a>x&kb)Ef}kFu{LP%N7=5cB)Q^k zWtqg7d6#lB!p6`!&U@qO=jYMJT%M6h=Ow6IKFh9!@+|o+i6a-RQU!i&B(j);7jy2a zyAY(A2n+I179B1;r6%s3nbXxRL^nfBySWWc`_ z);mFb{!IY$9=rxF{hYknEv~OPv(-HazMQ4Th0f9J-mD(+dAKSvQ|78v;jrdX)M8h2 zF~llJTBaB)be|t$RYgbSa;J=cWy;Rl+Z%@{Yap>Moxs>VQSYG68sA52Z+FTx>)K$opo-x3kZM8p$WSt{UqBcJun zOM`fBVB*0t+9(7!nL6JuU)5wh3?6&YxMXpvtZOB_6%uKEx!f{~$h`|H$6s?N@>Jq< zb|vPU{|#j~oqqx9j9(}SSAPghFdQcNR`f5&Lf<$)Zl0ECvQFvz^Vs<8>wwmY|5rDG z!f==E)(m|=3rL%?qH#XLVfdMhg4J#h-&7>GFLlXoDcPPy#Glg=Tjip?0Oy}U-*@t# ztlvfC&?(UE0{wzqaL#c>EhNTc%1ZC2Jg)ThD)|u=UtB)3M@Ln;;ChV`cvX=zGwV?C zwpjYV^$CeR%Xm{;e6c&LLy=X)!D?PHS$%zXF1A+xq^yO?C7OKaxQzbHM%TXHv1+#} zyX$<6wFvn&g|9LjrVBTPIiu@RV4;v_Gd}p;@IA##$MI}R<$y;PinZ6SaCX-29pnhQ z2#eHyvvaY>%k|`C#$k*m8+N$#B z!^r@+K}Alfwo|I2N#PzV7E%rP>w#~(me!pBI@+;&eI?j)ZHvcL?IjpssQ}C#%3&_R zz%WU@A5rwr&7;;pstD@~di^f(4$E^=@mcU&sQmYrMk3Fnl_mqohhVVYGxxVJvz7iA{5EOF^#`SiM)O}?+C=ogt$Kxtq^G@p|aF7Uo znD+1HJ%J2DlwEx$Vq75LB_9bjL6A;|7bh35h1cO!SM*{>Xe!#inDt{A!f&(mvVVU5 z@MZ9ZJd`z(WOh#_CP@V$k#*AtJbr|~CqW-;Kn@?v5c(;q>*&(_rPaln0rcqE;~DNNSWP#H@lBAesEDJi=%~wRZu_l~R2LE$GNO`t ziGLl7j902J%B=&xL=(T;Jxx|2(5n#W%q&+S(Dl{ORTT6p3VIaDx`{xOuHVp_*!R5;_{5j&Kt6t&cR6j3d;a?lq{SZcz!E0#_ATpBdm-rmVb(0-| zII?MMdK%`tVxd;|)xwoOF9%yJSh)&|m_J5&5zgZXI_5rCLC57m$Cb!3)9s%;*9M8X7a~5!Uiew>DpD51w2P^T1%DTM7IO92m+DK-?`J6g3u z7AU8x8gf7pEO}x;Wl`Ws#ew{tQa94SMnvD2D?`k;NwZ78L;>On8G4xj(LQN(8x98k zq!j6(ilW>mUp7@Lp<`aEoY#&rdBP+nlS3tfM=+udI;o4tk$ft6q{ zk}u}w=!<2Yvh}Ga=Ic+oQ5VQpRm4h5_G>i$s0z$Im10@Zj8TcCzQQ|`xwlguxqa5V zl!nYq8BG1Z4p3va{uVbZf|{QC8rzAoJUlyNaNWn_hKnrb64sXuLy5_;cvIyO*5|x> zD%$Y%uAz!(Aaf<<9`?_X?QUs&ceHTEI}Stm+S1;+knx=9?`l(XdILQ{*1M%hqVV~% z38U~?$)gL)qeo9Ik7kx>C6a!1i&VNy?z4@8 z(5tl2tF+L6E@rYy3;oq_q$0!HDlPOXEwn?bU8RLyrG*}?(n7D&LZ`UiDlPO=30kYP z&l@@xH7TOKGlMwRLLhn-qR6!zWzcCv4T}q-1^N;&cFbxNI zwa{rE`#%T6Xu$cLJCs4skv2NHiyuJ5j~~cHK_ra>C1D@48;Z_kre0-e^SGo<==2_MLpvwP&QA{#NnA@fkT{+hrcrpoSNpvP#?`*^gr>5Bub`AfHX-f3N&_qy$?<~#%BtyMw)+dllC z7v1>lFO(;#|NZxV$~Sbw`xosc8Ez+0Bu3+5-cS<<#J48ISObAw*|m*Vii&`;yrERj(f&j;ir)btPfUp(To@1KOhknh|1I3TAs zpiJPe6aO)u0b7F2bQ`lJP;~c)z%lQB+L^yX(?0MBG;?R+;SCYbrU@wFOtaP&83&VT z)SpoXcyV(qKzXEoCv-T?rj%35Bd{WtHAciVhk%89;5EUm;5H~wi?L(rtCvt`_n4L4 zAH`FnTOY*jhfr@KVqypWl`_sZE?a)*an!$?#G`nY06!*_@dgznaT@}U2!_1`+Tm3z zJ#%Ngr^J-V3IqNg29sd~I2TP4P9HWy_E|oRhc^tz3Ap2J!uM+1k zC2>9wcG!zY!^fh``OoY$@D*f=UimdFzIH3WhLvB#Gg-)1ehtMd{q%kfnTs+KK%{wh zb!&!N#H-SCj&0$E9=>IJyEw-}skuR>CTWmUiV@jTR#@SQGv}CE?tCYRp~gC8nR1tv zMWfo1`O~3fP*9Ue=IY_|akyO7`kBtcvSs*Ref$A=k#CtK6)aIjHOlN7Y|nlqmdNpy zFKZTcw=Ug7t81fWUK>4mzF*6Ee#yGeSL#k-8i1Bhl?(e+R2F?)9XL1UB8OzPM94J) zI2S+XR^AcS4!=L0cf{w4H(njNe}*G>DV`du5^&4fW~&l#RUw>5kz193tEwTcO29q! z@%d#Pp0On>owN8#rwmq*BuSwMuV!SYYW zS}0%YDOs)Fn1t$c5y4_bLTX`m{?cP5NLuEyIVzP2_oG#%veHUr6$v`i@t?d_S#i`; zrStrA78+T?M$cKw<>@}f=zXG6QvZcMZ8|5vOzE}6vSo|q1{G&(L1xTnp}S?I_bguD zvKnRvBAzP2XF0An@>$=!H25b;%~u0&g+#hwPQI@$9bd-A@Qi8r3N@jXC#062~L|fAB-izx$7^ zt>!O{v&++Fr``Oy+3qyAwkYCZ_wCDV{|ry0AH(4|ocQmBH#J6I?aEn&{!Kg_#t-C; z@(?SR>ja%K0XEEU1jvmBvtZ~CgX?gZps}%aa-R6t;q)O4DV{2t_*bI{XX}L{_y@b= z2nLD>>m0XQzI?Eaabk~RTnS3^s zj1jR2QgjlEkR(l)cT5;^&GQkPa)vAT=Q>0xnqdMr6sCHZ!eJv!Rpe#r147 z7>2$0rkBjd<9IR^d4H3lm*8hKMUDD*@q`1n5_3(*VnWC)iRc+WS->P_L^ux|HSuiH zS7B7wA>v*(9uOtt%6YU!CGt~mB|2WlIX4vu$a{wC%q1eXmbru1h49RZa{ z+y*`e2{D+0e1Ic{!^bV$(7_brVUgLxWIPd_MWfMe4p5Ky4G)Qd9}Yu|2PF!KrrVV! znHA?vv1Qa&*;6$QBa_SLrkUEoK9@7Io5a01yM4`TV(ci#kW_4#;)${hNP z$*o9-HUfoyJ`vKX8D_NYH}FqS#xdZ(K{QH4#4%$5cchBg!>&eQ$UFiV0dQjw79@dF z*Ess7pUnDqBCyaK#(a9vNjw_^+QWcO3_l4ch~Q0md{|t8FAkH~$1vzFK?H~$!MV=V zf$jq$4%!Tzf|ZQN!SAz>-{)w{Yb4&A8`!BBv^-)9>qTeV|9}CUf%)6XeeHNV?~5eOALa9*60bS*#%YOgyVE*ovZSYgz@=c4U^H| zr-W*R1QRnNI4oar#HbhwnCH77!48Lyn;sd3jDFc09f^Gq-UPFudTo;fJ9R$D6ywtL zqFw-OdKB+E2<7alg9rKznDw@#O8-6>MPraO2nLu_@G*!$z!-)kG~LG>9lsSkAln4$ z0m1zq&P$9ph1RptF#0XTu+JFr2Ww0#k5L}DDtdYXRtoe)$wZ!J6mJi&4deJXpf?=U zYix>&mYw#`Oc|Hmwmk9l^0Wwo@Y6W#Oyp};p z0gU~iwlm@y&-fTAT$4Y)L}>tIlY!ANCV8ndgAc%BIPwYEW+c)*x}%GK=j+H^n(0%i!m-h99I7eQ;SQG`Ll zYi~vFkl?L~4Mu$=9?+kJA1UMu?G^s?^d=%kU~b`vUHs(!z!jDq-$WCn#ps?BtFpL& zaTlm7_2NWJWkT-QRnmp*Dwzh8DIP{}1ojay!l$4n@{veb;S=AL7Ix85%oTQHoQQDh z2cnZ}Tt$%CxI9eK11>muT;Jc=^uGzG{cljv8-Cn|8QvJob(5pmiHRd;SF!j=OG?%z z{SMBskC@ATfT)=ynuyiz!?{s1j9_#dnv)S3B`!LDPb4o&-T)1F1=tgq-N|52jXPj2 zJsS^*8;L<8rU_3BjX7EdxChLa`4 z55xorN$^#y@1`fE06HQh_L1k`2Lnorm?lfT4=0qPAP{eDDsOlz-H9iWj!`K}Ye|8P zq$R&Iyebi$p3Az{-$4(KA2x9FVzba-KqOvCSy<4pNG+p9C|Dk~Sz}OFc`cI1WE$SX z(S{<^!(G(BGpTAa8;#J?;I&4IZe$t*IB`Jn;{7G0F#8aahs1P3CnmBKBqGY|aE*s1 z{5y`5B)TS^it^YkkR?i_J|5#kjW!ffQSQ@t;gwU|6M2G`9!Z`SDFI;P1i#_dkcTcT z#|KcF2tViH^j!-%*F8#Vq6LsRyiP_Y;Uk9F#ieH_Yi>rf_6i^zp_GayKT13im~^gX za)Bc35({RHk_5P1|BlJ(14!NRL*mI@X$qcNFtEiWTz_ISc-|4k2ok-EL51*9(+5&A z?SO({-U42(f-6R*+>3jX zQf25fXG^}|Y0(f3i6gS>F=`Xhw{C%&q44wzBU(#KnYJS1c>Pc~13rNw(`IgC3@SLj zIPW%p=^F1Kxtk$rtY#7Tfp9V;%857`2}-OF;UKHti$TNyy{pTUMz`5}-)Nnhg9Q}O zHsf5b%tTCK!4U6l0SawgaFhT9fJq>Tha4$`Io!adG&}5BRk&Nm03}EDUr4DQnqVeo zKl@pKL0H^a&+p=eRwO_=-#zM0F%97B3I6_i;?Jy*#-y99~E_c-~)! zf*~^&4UyEuqTj(YN1iq6FejF*n1d&uD^88uZCxH$@@dWiwLuh=>QoE;M*zGon;ThlfnOC667Ry{&{I`SNkg?8wUq&&Swe?JX#3 zumlp?LEI-`P?ok>&c3ob(4HW*({CegW(cEXIdc&3M0G;(SrrLa5uW`a>T;1^$G~Gq z{0UDal#?TYD`C+_GDBuEibo{3q1YymHsDxU0gx9|k#-*Iw-}G)IBhg5c3S5@s5=}! z7+{dx_MPt4yNnUC0sA9YH5CR0K9M1ianDvn$_b^sU>`{!*BekGt zXvC@3r$JsHCZyJrIRO7=uq<3AAPM2!gO`$Y%zn|%gW6@PpCD&~o1!oj<_~jV+P%h_^EabX%P= za1uOf3u7S6hd>j^oY20i-?5m!*qnoH@4M@_Eh!AY{_dOWw<1N7w3P^91Z7fkZ5b$q zJuiQmafRVI^P4FdK=SlALMkWIfb5=yR%k;_wmroN5)Y|AcN=4TWaqMR+{6op{A-GA z)6E;Sb%A%Y6iH8pXrcC zm01pHZCpbWHFm5EA^98O>g2NbzSZt@dyVrG;OwWTJ*s`#z36q1FYN=}vG=fxi}TZ8 zi+3pWX0>uk2eM)Br)KjKe?4y=cUu?G;^MM-zWBK_1d5yXFpnm1Vf2pZiG8%#a#FYD z%Sp}HHaWY$hCK$`$biL^<#clW=&$QhO5eJ9HbNn8A(U?|jDs`zri| zR#8eB%M`-G5}aYvFc|p1g&~?K&<<-blwhPUtKjEZ$j}5j`Yn&fc9cy3Ami&5Qei92 zS6-X|f)>&x(W(tYEVi7Ylkx@C(_&3X`V7W5_IDWZy#I8KEUy3>AN=I1N(l zi!_=8WjDb=+DdS2OF47_ore8|pvfQtiFCT)2C1pkz-(~xCVdG1B?V6frkBfM-d~)a zUVH%I_M`=>OSh9!TW)A*6ahT#sYTgz#kjazFv#T?r3l(fC;07+lck+p^v*Aw%j4L%6QNtDTR4?H8D5hbSrZjo(&#rjAmEF(!&AO@^eUTzwjMft94a1zlQ_md z==!^=1n=-AQt=T*VmUQe(lxwgtog0RdBex~%Ikg<-M9T_K;h7RbpuU$fL0KuDDB{ue~4K)dM$(+ z=|9YwT!i`lfmpC%SQ4%jQeKChjbhgD(GzCLHFV`z!*#}QM{66#Ri5o4UNXXl#Ze9| zj&e%o_45E7Ru^C;!FUXZ73qA>%0>9LJ*4pMWOj2CeUb($x>ytrG~RW16N^+1*3~BR zP;qMjkk2h-H7-GNIU%K^*Es#q__b3>urgmGi3o%;G_#z78r68$Jnc2!cbjce#|>Aq z>V2JEopxK7sy7BNx68E2ImOtF&O3&TE;QRoJWRY4Ti5GCiVm*~t4^-FJ0v4+sE{`= z`{HgEWLkxkn6eQ|rXn_+!MK*44pQ7?f+A!`-U?u25 z7r@UG>WlrGE&g+4@gH`pvaWlRFl{h_5kLurMUs*NdoJR!X;y?F{gPM&D}+Le;R9V` z!^$qas^SK(hn+s*DQK;!t$9fm1-}9i$_gVO!yPGv3l??B3;r$y#(||K*!#$Dw>zyL z{+{^FPvdC9=%b{WqkcH1zu*KO4ziR{q%c|>;HBaK9eLvmE7L*qdPc3uy{|NUcZegP zjw}sW>@^^f&D_?sy`vT1(>Ee?7ndRywv@3o?N-o>;2-h9+E<(5kS&juT8mR+G+JlWDOou!$Gt>-u z+fSjL)fJAd5b0D0vD`&$4V4hl4TX2lwJp$~;p3IOXsQcpY)Y4pM{NiGUBxU()lnUju281#0Ijm3L%tfJ|G=L5DZec;G@vm^S&j_VM5-g+Q>i0@V|Ytc zN6@j8HyK^Ei75!d7R{iB<}A--zEma~sR$99iZ}bTLzB?-*UpGYhx;(<4H>EkxiaHZ z#@~%dTf~z1UEqZNI!Zu$uMQ43HVq=R7Ft!s0%`b>!iLO=i8rQ6bPH$1Z9D;l-YYa| zy!e)%f1tfB35>fSx%1TPn+Eo&W7r`Sj$Yg=_4Hf#Xz}A$mPFR13zjF8$1X0r+2h=k z14-vJLi*9m-32yzh(Fv1pQ8KOeQ!1x_r}5FFb?2=j{f-!7ce#Sdq5#+NkcS*Pgm4ccZJ^ z_w2>`i+c(&+3?rdZ(*ab@g$V3smY5?zx1v37nr_4y;10{#+DVHAjU69v}s2#>8hX% zr^;h?$`L7)0Dz?twu9Nff#3^5fVkS~^D-5Ur{rMezd0H(5IQyopWi1T9J>h|SSq#| zx&?J6+0bI47*D+!Pqw{x+KHQOOzgg#M|-?d(iWH7M68c$Lx(GUH*!djqKpV!WV=dM zyi{rw71gWIs~{)&hV;5g{#lKH)35WNda<_FNH9n84Vmx`d4<NX6NGcs!Nq+e!Xli3`xp+ur4^+%gqJhN#8!#1?cLs(``2!XVN|O z=Vq_dY-7HTg+X&$2kHVzPL>xJ-KBw+zL}i|pl-Wy-nqPJcb5W<@?EM6%4zGY)$Lte zbvxb0`AO^ihu%M~n(fvSHl5Q2s4j@c#n-|>W$$q+gVDKq|GxFh!VqL{*D6vBW|!!; zugHn)_{WRoka6Z7q%L4+sOX(FercUuospB;W#iY=i^fT>)A~P)FIS=QU@lOpQrJoJ zq}RsZmII)z+0O+QvL!fVmIIH_y5|Dq@nlY>|-i1k*R17~%7#~JMr#wMYIZYn7E{)zJV~`wa!nNc1G6-%LdRhX9odL?kIR0cEU$=v>Ha!DGWawPw_^S z(RaV?;W*#kKqt6NmVq#1KrQ|5u?czmkyN5$>VED?U>*$92zm^1my$1 zDf^;O09<70JwFa(N}E9OwWiyL9^FinC3D;G0^wbRG-Rnc;N=`D_%Qv^0Fy7^b#s2t z!bAH(g72}nr_42i8=WGYF?ek1+}V z#a7S*ZbfpI zsfrJ}5B?v_L~b_`(%hHyO&K`kIOsYJ@J$|>guOLnL=U0jfJjFJUzo|5pFRYSYs`W0 z7!M|J&`rXRQDVh^%247>PWuBQ(I6o74Lt=H=1b6C7!)~$s~4+83?vX-M{sB-ci{kO zXAAQ~sVNbYl0G;xzKU1^7F+r|3ML=%_L*iWl1)(t+3*IIdYWQUbPD6vq(H6+jtKH4 zL@7Y}f={Gu;_^N6aet4i03C;D=}bg)7&~HN96cFsA7C^TZ2&1To(Sk)XbD*% zJE)O|QzG0G6S4fv`{|^YEcXWC)%yWG8V4~B-p6#yn2qD&2I+5-Pz=pu?rt*Tm4P&v zLjW5@s(>?MKv})Sw5B57-hdb81T>QHL27dIo8Wo|2R^Z03eXc-$ml#zM=xXjDv3-_ zA`=7NJ11MvzXZTK+(MCMZy1sDXYdh|f5D`Vf%5y4m@UV5z)(3oF|ODM9h@)|3wxL) zwji`e9ky%~xdfuJ@NaS#DvST73{)b?5TjoB8Uw);2WuO0b5I46Yvm!Rge3!+@AQ5W zav3p?V~)T8>|aj;j@FlQnT%f#AK6VpM^&P&8n-%Z*(qjZq%?lQTO&(;Ky;M93MXP@ zapW_~9Q{#763QGniB5OsA=Y9LtMBQEp7_U#=@6<_1~@cX1rwDR?KYmmF628E_zj~w zVNV4hpysTum%*uYs==sb;7}tZcFqKu%^Ph-IP17jwE#b}nSs+GC|pJ|(UY)3DCcV# z3WpklcqA#BJ)*7ll<&n1;up%L-xyD#p})7YyT2wpu+q95ii=@r`kAH^A@K+(S53W} z5OY7@MAOVR{d*$SQzIUo_o+zEk@nX=yKI4)h?fQM{j7N|6VXUNeU8-Sgkj{#oywX_ z1Z3shrA%3Z&;?&6FHyd2<$1`{SrRddpUSEra70po5@j<811Woqh1i7?qv%*6 z{w|`C*(myb7J8-=rU-+~qMB4!8?)K{MBZNHA&Hd6Oa{N0#F&Y&=X?tNc>E~kRq0bN z#4U{0z7K^DJRqBMSh3Y*6Aw(`r<}@!DWnCUJ~MwMDN>U0;`uR{-hKb=&R=<2-=P!R z@cT8v@z;boSH1@7W$g5y{F>f=~%s1EZ;1P`$ z)BE9D@8A9eAJcmFjW9fIQ3n0~(#F_<&(YBV{=56~aM%17zwRF$?EKsA-rnKf?h*XA z_isD9hr4^b|K{&34T6Ht3`4?v|KD(DhxhJwWzWCT&tHUP)c-D-4x)Jb?yYD4G@539 z134r88?tWuH+Ye>Z2MQ`HGNGY3qJJzB3z)a&aXPnlip>c-8ftSwBfIlugC^`-SE6` zUick2SSjaTP7bO~^Bg0MV8H$v+Us1hXqkie#Wx-~pK#?5(c#U=l~T+s5VGlI{afIZ zassk@rmJ_yi#d7IUs&Z?HvRk;*?WeX8je72(CEfC=(8&T!)N{k*!KSA{kydgX6GAk zd>zl=lEE=kzD==s+fD!0O&DPOgPRSt~8QhHf#jk(xioB0RX#kSF zxV)-f6IzL!z>XIjUm)wTmMjdul35u_c^cwA3qxKXqeB8#tp@dKtOaH0I={fmK0o$O zTF0E+Xv2x^4`DPJyte(^1lkFMtltrL9En`40x%2d3m{rJ0#fD6B9x`dtgc%~0VEk6 z&@eeANcl0Z9PagX>4m7OD#CC(Z;U^`v*7ao^FQ??h0{DvEcpvsiD}LS^PzeesoAJu z({)j5Bnt;Spv)yy1O;e^UsMc)|11ZQmZII3roen?HBn5M zASzLWfq~#t0*($y0ik_n;geEm^r3~o;42Ci{G$YvmP~y_ zP&Cls$psU1xluks1b~XArjGS?8yzZp4I%_V2`PNbdMk10mLoz8I%=t&fw1`Szr38bsPiUj<|-{OoA@Yx5j=>6Z?liTy7y-wHTeALsV$4p6u})Wli>bf;R^oWro3|9rEz}TJjKP!70hiF zrgh@~b?vgk^YBE# zEKuvD%wkDZ_Ewm3@`tQ$N$Gd-;0M5LZy2f`$mZ0H8I(b*Z*eO6Z~DAAFgbE zFaMF=qNJU%x|zkeN->9gc{Pzpkf-ZJsyVt>a#^-M(mJvp-A( z2P1J2g|2Vx`oLG6k)2mwry!V(uzJ);E9n&bY%B%!*Q5S;8T1b@dg>QIw*I3x3Ln-b zRx=HG6>DM8m>MHd=}M^;wn$T1I_jX54PT;L6;~}B+^_XK)@>q6%@RAa&1T{@OVN8@ zSJ@ON5#b;3xc2byuq|vZ+x_@{4f?`%qM0=JKtnWVu>EiC4T^BbbbSM?%qJs<$Tmd2 zO6Yxv-U=KQE;gRpNTs$Z67fBn(-|k<2=!FbyOIB(#EhA(XfbmedpLhQg^)Tnt+^^` z)q*L-s%}P-;_}8%Z(=MSadL6iXr0SbHkTS3Ky(A2Gu!b7LH3Myv9OJkJkE)Yh~kXx zppO}wLY7axd=dyt*s-*^h%4$i9fKUzIvq+u9UE$C+}z|Ig`!#N;L)wMoUA*Qzj+`7+bg24UaX(_$gqDir<;DJ zryWg8T|xi}}J_N*`U{a&d1IQmu?BXmf2Q%Vi>0mA9GP>L zxoD*+c1m;X)LZ6MZk+n7p6XyuB5<*wXP^y)J53N$$#z+3)oD^R+XA{HYqwFJ(lrdN znWC+H;}w5w_FQ=pGF*MGePp@OSIZ9PID*R*ql!vV>V$T+dLeE3&!V|_skh`c!a_>O zGI9PTAoJ-ECMEtl7<0|FT-<*$q*ai~my0(cUattP@Z`Y5hESvo@hm@NF{UTto`(TK zc41szOpNtBcP+9N<5!hE?}hNWN)N1BX2?$ZXw{;jtQ%7>4Y;ak9cVH5^wXw7pzNdm zEU2TWni{%5%`vMy53Db0V&uTL@Wil}24uRRgi#r!S6G)tQOri_J`)Sj!O7 z87x`1W*JkIeJwgmJhkSN)fo={b1732UDZ3cMEH<-7*{^GobNu{xm5zepX%Hynd|D@ zs(fx)0Rn}>W}zTiBGWp~t*kg(qG6StT2;l`#Sbktt(-%v#Fbti{ayrjjQO7;e=}+ z(6!Yx?%n)8ph{!r{R%ZCk5L}uGwG!5^oy9x0q3p(Rvv9Of7oXdM*hMGRJ@L5xGT={_Jo_q1ik=%4$QCS^uF~Jvb+if>_5@E=<@zdDgKK&% zxCWn(k}^fWzUrBnMV`J&YH}AoTyR}f$M{p_d0B5QV}4Ix5&pSX?5XOzf0lVHvu68e znZOe3us=8aUww6SH^RPvK&Dmc?<%Fgs~!u_8HMCp*{~oXPf?Vl9V3}daKu z-I5QpDeP9s-&e`sSIOU>J^6dCcPLg>?7_r(%B0i-L1do%?$ncv{1hi9E=B$b*@W-; zsT~RTL~xwH48D*s^GJ2iuu>=1O~Q2U;|Xz6E}%-8nI^o{qJGYr%+pk`P%7Qwt(A2= zNoR|cKrbmnyhKd39P#-GmC51_%bI$wEw-_fBEv|(cU4}e|&kcvj08HN1Nto$@jidcDanvPN#(yse#{vxF%^u8Q{1o zHj5N2&xLS8i=&J5jrq*#)vut-P3mv{blZ6DPrm(M*XdqH3h$o2%PiF%Uo0epy;(HN*U8TXahwU0s%a=F76GWKfw7DiXq%csJ*w zg4Lzf>eA{@bZM2guvOp`enBgnQLJonU)3j9|3{aCNfIup{8yR(-`>%|A=m$Uxw{7~ z(f)UIaJ16@pX0Og|6BS0S^j^En_s?k55jDJqzC&yN-G-hyRB;IAHK7|B~?Q` zte|U9>q?r2JxOB}ZJdFhmZo3e;4j25LX|AjD@;m&*HERP7bO9xj@*ibsd*L-nnwbv zf2nV((F#zKCIWs*pu{2reqz#r^~-k_)IbR4Q=|kYg(6xY-d2qgjJcZQC|VE#bI+ZN-`%r`2jTn0!O4)#f95hQ|i{&llqs`t(krE0@rfOXyeN68e=pgcjRm zk=LQ((}TC2mzWhD@AA33aXk6|@((su(DfQ#F0T21OgAF(T)8=fRmm>dKLLPDkQ82>xH=bZpuG?}0IFNmtFSVKkb3+D;aC z0!AzU%LAwX-~PeQLCXL4=xFcd%KrZxpUJ(yHM#L$Y{&55;1Q%3@3!Cfw}9Jy-+%S3 zzXjiKE?dX`mW(6yw{HEd*7i64)(18SZhb&j0DpY~j*c&6oc#K!J`-Tf;Xrmgnb?a&3!Lt-}Q$9oDs|3dFfsk z+Ivd?(Y5>1T`zzCnIkNF2d4XeiaoeQ_{A#BCiJhpTKq-*Mwfy7Mg8`Q zhNf?FXua5?1M>kFE)~7V2W*D~Dx3t5<`2R|rW;`XLdlBZfk>+9-^B5T|1UeMA^eo7 zMIpKoi4e_>@W~78N9Az54klb7yJwTqz2^Oz-D$PJ zD$MQchR^WWbTL2kSw84)Wjz!Da{4d@I@hWw$0w>zv@RF4d=lDgORb4|*`$(c%VPV0 zIXWs^8QZNfzmw|ol8ckyPnGqtT=4R{NiUID#nc*WXNjWccFkkGZ!5i)cQ!0~LY0qN zcr-o30c64@4<7+_dQGi4Bqa=_%KJs^qssf`%%e&#g{(smrI?Y^gQw_u0a2E}_7p@} zKI#`jl$IAj2~pYQp55%TN*5)}vq~40SZ9@v${1%^A7+K#yne)~D1R|t?-y0D)g5@{ zJ!JfTOM6IlkS%6gvx97z+T0E@=T}bIS-o~h$C7dAuWn#+O0X*V(fw9_1yv12sUlQT z%G8!_^KA~5#>lC%Y4@#7ua)|wYz)8a~S^MhJi zfo&0>9mUYHUB0T-qfwS@(XMoXumyU`lbP)9p49GDTFWXmwP&z#3Fp(3Lmn${Y0S{#f!~W{)qY06?+-=iw3je_HZk?$!Z(KLicxFVPKXU^g=6@<-*dseY)OGYtE} zu6n)xcsNV&KMyrLOb&Fs=Kst43n+Whjh7w*6Dze&8(mDE4ByY1=UsB+Y+SZ{VvP5& z!2^mzM)?)0FXh7M+*c@&qRd9`bb^g=& z#Rp6Z-Z<|xj*-S;Y$$s{2Q{8W7S^bQyRkTa(~ z>&LgF=%1mJ_RcRbLiNYqX{*!iwYtqS0QsP5TL~~lwPQLtnOow9DvBi2gc5)SBOsMQ z_({C@G&{t&@si)0~4bnzXrbSg!x1J z;{1mmCI4wR|8dpqbekst_EC-IPRJ2y$!t816WEN?So)p^4!V=uQ62venaSGn$C0xzq!RnSW|LGk4}Q$IP73xozfU7+d5PLOo>XRXfr zi}qOqxyh^Qtp!*Y&=&A>k5Z(_C27ERhtb>tr3OHj7r2)hzIK|&y$`MKkG)R!>K)Ks zr*V3E@qt$R+xl-QwBhB@qu%^tpDXSs$dPlqB-7coukY1FhCLp|C?=4M!+vxVVJZ~| zU}w#OZBGay9muy(}G3P@xDHynQ{&VBBC7g|$-6oFi zIwLY|70%=^{y3Nb)qyCYc@I+-+?1iFcG0HK*M^Jb@yS;^7yunm?EOz+M!6d>hl}DLUV!`vR zbJ;j$uhD>uCE@5CiuwcB50A@Zf9wzMp;vTDwTfEac{{aTfh)$VC z%Nq6l1)jyw?@0^#?jm+GVvnnBF$@_W3pWra7sO$5V97{3C9fHBLV?eg$gXb#laP>tZNO2cT*& zFy28i0p4&5M^EEj^R(A^j}jv)`6yo;?mGEqy`G*5_Oq+gZtGHw$=FIw!O4o}>Tnq| z5uC^vA4$Q6|g2I%W&|RoVW;(t&Y3ehv;~%-Drc_e_(lJ{QC*hDRt<$*pBz5A5 zdT%#77pGTj_yOe~pmB1Ny!LfKN}YejaAl62Be!6c`$8Sa(nnA+Xjhk=ZoAnyljr`= zP0+yFKR4S5q?6l}yjllbw^Lm);H1J{0G(@aoy;fqg*rf{oiEElBO~PHMY{`dIXOzU zbzPv;K~fCSY3r=j?Oj}TJ6#YNP`LZYRkPiq4eR71#c$Su)ak5S47I_*08XdSm~LAK zGK2LM!_v8W|GxDLfZ>!Ejb?QqVDH&df1@A$_HqIai&=zOUrd1YL3i@|K- zFK3NkT4z^hBphBgem%WtoWMc!spvU8p^PkL?q4d5<5L~`D# z4Xy2;TLDI7U}!=Zf3s{|7K25i+4Gen;SK24i_}lrZ`2k=m zJr>gM%&|*MH}hf`g|+wn)j4Yn0ATU?kba>KbZJlIV$iy+vnFtQfT;LP5bf#!BBCmU za4E0bx_EO^Xqrox5At8;2$<C5Hp9H5B2MP8KV6`2iR-%L42s z#*lcKh}Q_?NqjpA?sX9Yt3KBo4O)~?q7ye1a$R2LNR6pB*3{)p`6iQY=LbHlLY=Ys z^5SKVC}_1P8dqEza7m_|p(*hcQo_ZJe~#B%9Zm(1M-X_vlcZFrN#U&hgG^ zNTn0j+wYJ4-JSiztgfYA{LrGFGYf7tFs4iG=~hl;F!0yWu>$6K6HY={dVds#z}kgk z)u94YpkJY0g%<0!z(>AEgjGh$|2EIhz-l5dZ>E?;Ihp$L$k+pDJ(uOPa;}b4N9PwT zbA6lVSdeZdM*Ig0bfPLn$QXHy!r=f3VK@XV+y+yS?iDy$W@L1ZHZ4i^-{$!m{fpkncDp2vZ^y~zrM77ZK_6Q2__x8gh9TZmf}g%ZAumKTen zxR<$>NX4o3?1zBWfh^9JZQ;5!leLWa02H@)KlAlnBT3?ZMEv{%UX?cWZEluIn^y65 z*k4&HwVOx`;Wc}ly2{QhjehlgiH44Ac+2;lx!q0U+3Wn{q<>>o=459=!{;ms2zw90QyDl`fIw$8qM6OZ0{+^q78khc_3r(HY5B{DD3qLh~ z_4iz8xctT6b7A3!%L^b`Cm!JA@43)$dU5RUIjM!b9vu&xE!YfBG_=mJ=Y1z4+CTgI zE^29X&l>)|3r*(@q{Mv}qJH|t-*+MExCu+Q??lv*zwbiR2|Mt)5Y=g&|KuOIFm-X+ z^$%Q_YFwWB2QD<7bo>JsmO7mu-(UI%E;O|+LE1o)I&fjC-9~aea3KplRr~`NvfwLq z?nKy+$3PzkPRfGL_x(c`#^^D5O8JK_#C1!fkx}}9XxlQdhi@r@1YB+SM3%&buuet+XYkz%=P7wbNikCOwYd+^7kad$RZSx zpn2k>T$Gz>^^GUmn5D!;6Pe-KZgX^Cwz1Mi>xLmnq$=f$${PJIDi+S!Vm5uwOoabN zBl<^Vf${#xyy;2|%^e!qn%{V`Dmvv%<}#&!E@km?4 zwx{Sh{@TA4^<6m=;->mrPhEKLih@z-OH5A92<|veA}%P8TB-S}(NML@%Rrt+dsw$!}$z1eUU$q_d!zOtjMjFVD5RH_OW79I|C%9FDopA;MMIpFUt?7 z&tHFWPhlGyq9(z{rtwJR^4SmtS0#VaZPs64T}AnPqc&WHX^6N}BmGbsV!J^GxaM;R94D`PvQPuG#t?P3PTc8S@;O%AuG;Oa+778zdW$` zv%=WON#;9$c_jYRK7?!W5P6p7)@w2Oo{N7tn=Z^hN_zfm{G$Y}ubY2Z*=q|=w~}+x z!9TJ`WQjadg?rdJaOWPdI`7D2%$~Q7c__h)l#hyxVJ2N# z+6@F@N>-rCUu~?DVqg5p=Oc=dY*y&PFoKvL4G6$lrJo$E;OB+B&#KY~;UfDnnMBzq z&qxD5+hO=(VcyHQZL%*#Q+X+!rUd!7Q9q{w;the?DK0SKU zf^H!OOGMu)2rU(c%kY~g9+P}rQ1Z%wMoY7Cu35GgRs|kX>AWu*HeEsMOFP+Jt(0I@ zG`V!)u4iM)3qhT!3ih05=|YgFE029)_-56_*uU=T9tKnd3bQz#b7_yc6-Ue-sX+kv zqD*iFJ>?b-F?-?$1wG_e4l#QObPtYI%_$<1ueqYOgPBfnH2G3?bx60S)w!OH2E(uy z-}ESJ)CBcRd_QMN^-E?HRd0ghCOOm3tySVQ)KkakYfgXWbeCVmB(Fb(3qi-?Z=7T_ z{&>&>pyA&m*-aJMrlbH$g-zx>@aW2I!&Q=1_MkaBXDJ-?FnQNTRoHV1t5ks5af%Sc zRY$fRiP;@$@5HDaa8ZAIQpyXsZf7(qtefF4y&sIJ=3VwEez#Cina>)<%Si*4B%Hc ztO&i|Hw`P5kXzrPQenQOhLSQniJ$zl8jA7_9pmYwT2F=M66l5Tn3Ie951D|Q|G|Pv h!nO6sRV}5}XZ2ZqR-e^p_4%`W{y%b%W+4D@0|32ob|e4* diff --git a/spec/getdns-0.384.tgz b/spec/getdns-0.384.tgz new file mode 100644 index 0000000000000000000000000000000000000000..bb9908f4b518ecbd51cafe2e51ce95201bf20096 GIT binary patch literal 38307 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 Dh&T~A literal 0 HcmV?d00001 diff --git a/spec/getdns_core_only.h b/spec/getdns_core_only.h index 32c18905..4c239114 100644 --- a/spec/getdns_core_only.h +++ b/spec/getdns_core_only.h @@ -1,4 +1,4 @@ -/* Created at 2014-02-03-21-44-05*/ +/* Created at 2014-02-03-21-52-29*/ #ifndef GETDNS_H #define GETDNS_H diff --git a/spec/index.html b/spec/index.html index ba30a3b1..b978a40b 100644 --- a/spec/index.html +++ b/spec/index.html @@ -1869,8 +1869,144 @@ as it is for the synchronous example, it is just done in main().

This example shows how to use getdns_hostname() to get names from the DNS reverse tree.

-

[[[[ Something will go here soon ]]]]]

- +
#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <inttypes.h>
+#include <getdns_libevent.h>
+
+#define UNUSED_PARAM(x) ((void)(x))
+
+/* Set up the callback function, which will also do the processing of the results */
+void this_callbackfn(struct getdns_context *this_context,
+                     uint16_t     this_callback_type,
+                     struct getdns_dict *this_response, 
+                     void *this_userarg,
+                     getdns_transaction_t this_transaction_id)
+{
+    getdns_return_t this_ret;  /* Holder for all function returns */
+    UNUSED_PARAM(this_userarg);  /* Not looking at the userarg for this example */
+    UNUSED_PARAM(this_context);  /* Not looking at the context for this example */
+    UNUSED_PARAM(this_ret); /* Set, but not read */
+    if (this_callback_type == GETDNS_CALLBACK_COMPLETE)  /* This is a callback with data */
+    {
+        /* Be sure the search returned something */
+        uint32_t this_error;
+        this_ret = getdns_dict_get_int(this_response, "status", &this_error);  // Ignore any error
+        if (this_error != GETDNS_RESPSTATUS_GOOD)  // If the search didn't return "good"
+        {
+            fprintf(stderr, "The search had no results, and a return value of %d. Exiting.\n", this_error);
+            getdns_dict_destroy(this_response);
+            return;
+        }
+        struct getdns_list *replies_tree;
+        this_ret = getdns_dict_get_list(this_response, "replies_tree", &replies_tree);  // Ignore any error
+        size_t num_replies;
+        this_ret = getdns_list_get_length(replies_tree, &num_replies);  // Ignore any error
+        /* Go through each reply */
+        for ( size_t reply_count = 0; reply_count < num_replies; ++reply_count)
+        {
+            struct getdns_dict * this_reply;
+            this_ret = getdns_list_get_dict(replies_tree, reply_count, &this_reply);  // Ignore any error
+            /* Just print the address */
+            struct getdns_list* reply_answers;
+            this_ret = getdns_dict_get_list(this_reply, "answer", &reply_answers); // Ignore any error
+            size_t num_answers;
+            this_ret = getdns_list_get_length(reply_answers, &num_answers);  // Ignore any error
+            /* Go through each answer */
+            for ( size_t answer_count = 0; answer_count < num_answers; ++answer_count)
+            {
+                struct getdns_dict * this_rr;
+                this_ret = getdns_list_get_dict(reply_answers, answer_count, &this_rr);
+                /* Get the RDATA type */
+                uint32_t this_type;
+                this_ret = getdns_dict_get_int(this_rr, "type", &this_type);  // Ignore any error
+                if (this_type == GETDNS_RRTYPE_PTR)
+                {
+                    struct getdns_dict *this_rdata;
+                    this_ret = getdns_dict_get_dict(this_rr, "rdata", &this_rdata);  // Ignore any error
+
+                    struct getdns_bindata * this_dname;
+                    this_ret = getdns_dict_get_bindata(this_rdata, "rdata_raw", &this_dname);
+                    char *this_dname_str = getdns_convert_dns_name_to_fqdn((char *)this_dname->data);
+                    printf("The dname is %s\n", this_dname_str);
+                    free(this_dname_str);
+
+                }
+            }
+
+        }
+    }
+    else if (this_callback_type == GETDNS_CALLBACK_CANCEL)
+        fprintf(stderr, "The callback with ID %"PRIu64" was cancelled. Exiting.", this_transaction_id);
+    else
+        fprintf(stderr, "The callback got a callback_type of %d. Exiting.", this_callback_type);
+    getdns_dict_destroy(this_response);
+}
+
+int main()
+{
+    /* Create the DNS context for this call */
+    struct getdns_context *this_context = NULL;
+    getdns_return_t context_create_return = getdns_context_create(&this_context, 1);
+    if (context_create_return != GETDNS_RETURN_GOOD)
+    {
+        fprintf(stderr, "Trying to create the context failed: %d", context_create_return);
+        return(GETDNS_RETURN_GENERIC_ERROR);
+    }
+    /* Create an event base and put it in the context using the unknown function name */
+    struct event_base *this_event_base;
+    this_event_base = event_base_new();
+    if (this_event_base == NULL)
+    {
+        fprintf(stderr, "Trying to create the event base failed.");
+        getdns_context_destroy(this_context);
+        return(GETDNS_RETURN_GENERIC_ERROR);
+    }
+    (void)getdns_extension_set_libevent_base(this_context, this_event_base);
+    /* Set up the getdns call */
+    struct getdns_dict * this_addr_to_look_up = getdns_dict_create();
+    // TODO: check the return value above
+    struct getdns_bindata this_type = { 4, (void *)"IPv4" };
+    getdns_return_t this_ret = getdns_dict_set_bindata(this_addr_to_look_up, "address_type", &this_type);
+    UNUSED_PARAM(this_ret);
+    struct getdns_bindata this_ipv4_addr = { 4, (void *)"\x08\x08\x08\x08" };
+    this_ret = getdns_dict_set_bindata(this_addr_to_look_up, "address_data", &this_ipv4_addr);
+    char* this_userarg = "somestring"; // Could add things here to help identify this call
+    getdns_transaction_t this_transaction_id = 0;
+
+    /* Make the call */
+    getdns_return_t dns_request_return = getdns_hostname(this_context, this_addr_to_look_up,
+        NULL, this_userarg, &this_transaction_id, this_callbackfn);
+    if (dns_request_return == GETDNS_RETURN_BAD_DOMAIN_NAME)
+    {
+        char *ip_address_str = getdns_display_ip_address(&this_ipv4_addr);
+
+        fprintf(stderr, "A bad IP address was used: %s. Exiting.\n", ip_address_str);
+        free(ip_address_str);
+        getdns_dict_destroy(this_addr_to_look_up);
+        event_base_free(this_event_base);
+        getdns_context_destroy(this_context);
+        return(GETDNS_RETURN_GENERIC_ERROR);
+    }
+    else
+    {
+        /* Call the event loop */
+        int dispatch_return = event_base_dispatch(this_event_base);
+        UNUSED_PARAM(dispatch_return);
+        // TODO: check the return value above
+    }
+    /* Clean up */
+    getdns_dict_destroy(this_addr_to_look_up);
+    event_base_free(this_event_base);
+    getdns_context_destroy(this_context);
+    /* Assuming we get here, leave gracefully */
+    exit(EXIT_SUCCESS);
+}
+
+ +

7. More Helper Functions

@@ -2285,7 +2421,7 @@ The response dicts inherit the custom memory management functions and the value

9. The Generated Files

-

There is a tarball that includes the .h files, the examples, and so on. The examples all make, even though there is no API implementation, based on a pseudo-implementation in the tarball; see make-examples-PLATFORM.sh. Note that this currently builds fine on the Macintosh and Ubuntu; help is definitely appreciated on making the build process

There is a tarball that includes the .h files, +