ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_parser.y
(Generate patch)

Comparing ircd-hybrid-7.2/src/ircd_parser.y (file contents):
Revision 34 by lusky, Sun Oct 2 21:05:51 2005 UTC vs.
Revision 38 by adx, Sun Oct 2 22:27:12 2005 UTC

# Line 2491 | Line 2491 | connect_send_password: SEND_PASSWORD '='
2491   {
2492    if (ypass == 2)
2493    {
2494 <    if (yy_aconf->spasswd != NULL)
2495 <      memset(yy_aconf->spasswd, 0, strlen(yy_aconf->spasswd));
2494 >    if ($3[0] == ':')
2495 >      yyerror("Server passwords cannot begin with a colon");
2496 >    else if (strchr($3, ' ') != NULL)
2497 >      yyerror("Server passwords cannot contain spaces");
2498 >    else {
2499 >      if (yy_aconf->spasswd != NULL)
2500 >        memset(yy_aconf->spasswd, 0, strlen(yy_aconf->spasswd));
2501  
2502 <    MyFree(yy_aconf->spasswd);
2503 <    DupString(yy_aconf->spasswd, yylval.string);
2502 >      MyFree(yy_aconf->spasswd);
2503 >      DupString(yy_aconf->spasswd, yylval.string);
2504 >    }
2505    }
2506   };
2507  
# Line 2503 | Line 2509 | connect_accept_password: ACCEPT_PASSWORD
2509   {
2510    if (ypass == 2)
2511    {
2512 <    if (yy_aconf->passwd != NULL)
2513 <      memset(yy_aconf->passwd, 0, strlen(yy_aconf->passwd));
2512 >    if ($3[0] == ':')
2513 >      yyerror("Server passwords cannot begin with a colon");
2514 >    else if (strchr($3, ' ') != NULL)
2515 >      yyerror("Server passwords cannot contain spaces");
2516 >    else {
2517 >      if (yy_aconf->passwd != NULL)
2518 >        memset(yy_aconf->passwd, 0, strlen(yy_aconf->passwd));
2519  
2520 <    MyFree(yy_aconf->passwd);
2521 <    DupString(yy_aconf->passwd, yylval.string);
2520 >      MyFree(yy_aconf->passwd);
2521 >      DupString(yy_aconf->passwd, yylval.string);
2522 >    }
2523    }
2524   };
2525  

Diff Legend

– Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)