Changeset a199d33
- Timestamp:
- 2008-03-29T22:19:17Z (17 years ago)
- Branches:
- master
- Children:
- 18ff38f
- Parents:
- 8968133
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
irc.c
r8968133 ra199d33 736 736 irc_spawn( irc, u ); 737 737 738 irc_usermsg( irc, "Welcome to the BitlBee gateway!\n\nIf you've never used BitlBee before, please do read the help information using the \x02help\x02 command. Lots of FAQs are answered there." ); 738 irc_usermsg( irc, "Welcome to the BitlBee gateway!\n\n" 739 "If you've never used BitlBee before, please do read the help " 740 "information using the \x02help\x02 command. Lots of FAQs are " 741 "answered there.\n" 742 "If you already have an account on this server, just use the " 743 "\x02identify\x02 command to identify yourself." ); 739 744 740 745 if( global.conf->runmode == RUNMODE_FORKDAEMON || global.conf->runmode == RUNMODE_DAEMON ) … … 742 747 743 748 irc->status |= USTATUS_LOGGED_IN; 749 750 /* This is for bug #209 (use PASS to identify to NickServ). */ 751 if( irc->password != NULL ) 752 { 753 char *send_cmd[] = { "identify", g_strdup( irc->password ), NULL }; 754 755 irc_setpass( irc, NULL ); 756 root_command( irc, send_cmd ); 757 g_free( send_cmd[1] ); 758 } 744 759 } 745 760 -
irc.h
r8968133 ra199d33 69 69 char *host; 70 70 char *realname; 71 char *password; 71 char *password; /* HACK: Used to save the user's password, but before 72 logging in, this may contain a password we should 73 send to identify after USER/NICK are received. */ 72 74 73 75 char umode[8]; -
irc_commands.c
r8968133 ra199d33 30 30 static void irc_cmd_pass( irc_t *irc, char **cmd ) 31 31 { 32 if( global.conf->auth_pass && 32 if( irc->status & USTATUS_LOGGED_IN ) 33 { 34 char *send_cmd[] = { "identify", cmd[1], NULL }; 35 36 /* We're already logged in, this client seems to send the PASS 37 command last. (Possibly it won't send it at all if it turns 38 out we don't require it, which will break this feature.) 39 Try to identify using the given password. */ 40 return root_command( irc, send_cmd ); 41 } 42 /* Handling in pre-logged-in state, first see if this server is 43 password-protected: */ 44 else if( global.conf->auth_pass && 33 45 ( strncmp( global.conf->auth_pass, "md5:", 4 ) == 0 ? 34 46 md5_verify_password( cmd[1], global.conf->auth_pass + 4 ) == 0 : … … 38 50 irc_check_login( irc ); 39 51 } 40 else 52 else if( global.conf->auth_pass ) 41 53 { 42 54 irc_reply( irc, 464, ":Incorrect password" ); 55 } 56 else 57 { 58 /* Remember the password and try to identify after USER/NICK. */ 59 irc_setpass( irc, cmd[1] ); 60 irc_check_login( irc ); 43 61 } 44 62 } … … 581 599 582 600 static const command_t irc_commands[] = { 583 { "pass", 1, irc_cmd_pass, IRC_CMD_PRE_LOGIN},601 { "pass", 1, irc_cmd_pass, 0 }, 584 602 { "user", 4, irc_cmd_user, IRC_CMD_PRE_LOGIN }, 585 603 { "nick", 1, irc_cmd_nick, 0 },
Note: See TracChangeset
for help on using the changeset viewer.