-<div class="fragment"><pre>00112 {
-00113 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
-00114 <span class="keywordtype">char</span>* myclass;
-00115 <span class="keywordtype">char</span>* mycmd;
-00116 <span class="keywordtype">char</span>* savept;
-00117 <span class="keywordtype">char</span>* savept2;
-00118
-00119 <span class="comment">// are they even an oper at all?</span>
-00120 <span class="keywordflow">if</span> (strchr(this->modes,<span class="charliteral">'o'</span>))
-00121 {
-00122 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this->nick);
-00123 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j < ConfValueEnum(<span class="stringliteral">"type"</span>,&config_f); j++)
-00124 {
-00125 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&config_f);
-00126 <span class="keywordflow">if</span> (!strcmp(TypeName,this->oper))
-00127 {
-00128 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this->nick,this->oper);
-00129 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&config_f);
-00130 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&savept);
-00131 <span class="keywordflow">while</span> (myclass)
-00132 {
-00133 log(DEBUG,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
-00134 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k < ConfValueEnum(<span class="stringliteral">"class"</span>,&config_f); k++)
-00135 {
-00136 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&config_f);
-00137 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
-00138 {
-00139 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&config_f);
-00140 log(DEBUG,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
-00141
-00142
-00143 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&savept2);
-00144 <span class="keywordflow">while</span> (mycmd)
-00145 {
-00146 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
-00147 {
-00148 log(DEBUG,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
-00149 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00150 }
-00151 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&savept2);
-00152 }
-00153 }
-00154 }
-00155 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&savept);
-00156 }
-00157 }
-00158 }
-00159 }
-00160 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00161 }
+<div class="fragment"><pre>00115 {
+00116 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
+00117 <span class="keywordtype">char</span>* mycmd;
+00118 <span class="keywordtype">char</span>* savept;
+00119 <span class="keywordtype">char</span>* savept2;
+00120
+00121 <span class="comment">// are they even an oper at all?</span>
+00122 <span class="keywordflow">if</span> (strchr(this->modes,<span class="charliteral">'o'</span>))
+00123 {
+00124 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this->nick);
+00125 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j < ConfValueEnum(<span class="stringliteral">"type"</span>,&config_f); j++)
+00126 {
+00127 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&config_f);
+00128 <span class="keywordflow">if</span> (!strcmp(TypeName,this->oper))
+00129 {
+00130 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this->nick,this->oper);
+00131 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&config_f);
+00132 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&savept);
+00133 <span class="keywordflow">while</span> (myclass)
+00134 {
+00135 log(DEBUG,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
+00136 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k < ConfValueEnum(<span class="stringliteral">"class"</span>,&config_f); k++)
+00137 {
+00138 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&config_f);
+00139 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
+00140 {
+00141 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&config_f);
+00142 log(DEBUG,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
+00143
+00144
+00145 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&savept2);
+00146 <span class="keywordflow">while</span> (mycmd)
+00147 {
+00148 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
+00149 {
+00150 log(DEBUG,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
+00151 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00152 }
+00153 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&savept2);
+00154 }
+00155 }
+00156 }
+00157 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&savept);
+00158 }
+00159 }
+00160 }
+00161 }
+00162 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00163 }