<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";
        mso-fareast-language:EN-US;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-CA" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hi,<br>
<br>
<o:p></o:p></p>
<p class="MsoNormal">I have an issue using the unbound python module. I am trying to use it to change the behavior of the dns query, but I fail at loading the module.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I am running on Debian Wheezy, with these packages:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">apt-cache policy unbound python-unbound<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">unbound:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Installed: 1.4.17-3<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Candidate: 1.4.17-3<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Version table:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">*** 1.4.17-3 0<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">        500 http://mirror.clibre.uqam.ca/debian/ wheezy/main amd64 Packages<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">        100 /var/lib/dpkg/status<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">python-unbound:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Installed: 1.4.17-3<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Candidate: 1.4.17-3<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">  Version table:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">*** 1.4.17-3 0<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">        500 http://mirror.clibre.uqam.ca/debian/ wheezy/main amd64 Packages<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">        100 /var/lib/dpkg/status<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt"><o:p> </o:p></p>
<p class="MsoNormal">I installed everything using apt-get.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">In my configuration file the settings are the following:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">python:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">                python-script: "/etc/unbound/UnboundOfflineModule.py"<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">                server:<o:p></o:p></p>
<p class="MsoNormal">                                module-config: "python validator iterator" # I tried mixing the validator and python module with no success<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I do not use chroot config at the moment for the debug and verbosity is at 5.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The python script is located here:<o:p></o:p></p>
<p class="MsoNormal">                ls /etc/unbound/UnboundOfflineModule.py<o:p></o:p></p>
<p class="MsoNormal" style="text-indent:36.0pt">-rw-r--r-- 1 root root 3.6K Jul  8 09:41 /etc/unbound/UnboundOfflineModule.py<o:p></o:p></p>
<p class="MsoNormal" style="text-indent:36.0pt"><o:p> </o:p></p>
<p class="MsoNormal" style="text-indent:36.0pt">I also tried to set the owner of the file to be unbound and it didn’t change anything, the error stays the same.<o:p></o:p></p>
<p class="MsoNormal" style="text-indent:36.0pt"><o:p> </o:p></p>
<p class="MsoNormal">Loading my personal unbound configuration file using this command throws these messages:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">/usr/sbin/unbound -c /etc/unbound/unbound-edge-1.conf<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:72.0pt">[1373291338] unbound[2306:0] debug: creating udp4 socket 172.30.36.75 53<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:72.0pt">[1373291338] unbound[2306:0] debug: creating tcp4 socket 172.30.36.75 53<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:72.0pt">[1373291338] unbound[2306:0] debug: creating tcp4 socket 0.0.0.0 8961<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:72.0pt">[1373291338] unbound[2306:0] debug: switching log to syslog<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:72.0pt"># Then it crashes<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The errors I can retrieve from the logs are: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">==> /var/log/daemon.log <==<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2229:0] debug: setup SSL certificates<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2229:0] warning: did not exit gracefully last time (2199)<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] debug: chdir to /etc/unbound<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] debug: drop user privileges, run as unbound<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] debug: module config: "python validator iterator"<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] notice: init module 0: python<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] error:
<b>pythonmod: can't parse Python script /etc/unbound/UnboundOfflineModule.py</b><o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] error: module init for module python failed<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">Jul  8 09:43:54 offline unbound: [2230:0] fatal error: failed to setup modules<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt"><o:p> </o:p></p>
<p class="MsoNormal">The unboundmodule.py is located here: /usr/lib/python2.7/dist-packages/unboundmodule.py<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">On the other hand, my python script is well installed and working, that I can confirm because in there I wrote a main function to which I added a command line interface and I can use it at the command line. So I know it is not missing a
 python library or even because it is not on the python path.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Do you have any idea of what could be the problem of parsing the python script? What I am missing to get this to work?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Regards<o:p></o:p></p>
<p class="MsoNormal">Dominick<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-CA"><br>
<br>
<i>Dominick Rivard,</i><br>
<i><span style="color:#969696">Solutions Architect</span></i><br>
<br>
<img width="213" height="36" id="Picture_x0020_1" src="cid:image001.jpg@01CE7BBE.EBC96490" alt="image001"><br>
<br>
5275 Queen Mary <br>
Montréal, Qc<br>
H3W 1Y3<br>
Tel: 514-385-4448 ext 126<br>
Fax: 514-385-6660<br>
<br>
<b><i>Notice: </i></b><i>This message is confidential and privileged. If you are not the addressee, please inform the sender by return e-mail immediately and delete this message and destroy all copies.</i><br>
<br>
</span><b><i><span lang="FR-CA" style="mso-fareast-language:EN-CA">Avis :</span></i></b><i><span lang="FR-CA" style="mso-fareast-language:EN-CA"> Ce message est confidentiel et protégé par le secret professionnel. Si vous n’êtes pas le destinataire, veuillez
 informer l’expéditeur par courrier électronique immédiatement et effacer ce message et en détruire toute copie.</span></i><span lang="FR-CA" style="mso-fareast-language:EN-CA">
</span><span lang="FR-CA" style="mso-fareast-language:EN-CA"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="FR-CA"><o:p> </o:p></span></p>
</div>
</body>
</html>