Changeset e67e513
- Timestamp:
- 2011-10-03T14:56:58Z (13 years ago)
- Branches:
- master
- Children:
- 409c2de
- Parents:
- 3231485
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
ipc.c
r3231485 re67e513 356 356 irc_switch_fd( irc, ipc_child_recv_fd ); 357 357 irc_sync( irc ); 358 irc_ usermsg( irc, "You've successfully taken over your old session" );358 irc_rootmsg( irc, "You've successfully taken over your old session" ); 359 359 ipc_child_recv_fd = -1; 360 360 … … 374 374 { 375 375 /* Master->New connection */ 376 irc_ usermsg( irc, "Could not take over old session" );376 irc_rootmsg( irc, "Could not take over old session" ); 377 377 } 378 378 } … … 412 412 /* Drop credentials, we'll shut down soon and shouldn't overwrite 413 413 any settings. */ 414 irc_ usermsg( irc, "Trying to take over existing session" );414 irc_rootmsg( irc, "Trying to take over existing session" ); 415 415 416 416 irc_desync( irc ); -
irc.c
r3231485 re67e513 363 363 if( irc->status & USTATUS_LOGGED_IN ) 364 364 { 365 irc_ usermsg( irc, "Error: Charset mismatch detected. The charset "365 irc_rootmsg( irc, "Error: Charset mismatch detected. The charset " 366 366 "setting is currently set to %s, so please make " 367 367 "sure your IRC client will send and accept text in " … … 767 767 irc->root->last_channel = irc->default_channel; 768 768 769 irc_ usermsg( irc,769 irc_rootmsg( irc, 770 770 "Welcome to the BitlBee gateway!\n\n" 771 771 "If you've never used BitlBee before, please do read the help " … … 910 910 g_free( test ); 911 911 g_iconv_close( oc ); 912 irc_ usermsg( irc, "Unsupported character set: The IRC protocol "912 irc_rootmsg( irc, "Unsupported character set: The IRC protocol " 913 913 "only supports 8-bit character sets." ); 914 914 return NULL; … … 941 941 GSList *l; 942 942 943 irc_ usermsg( irc, "Setting `%s' is obsolete, use the `show_users' "943 irc_rootmsg( irc, "Setting `%s' is obsolete, use the `show_users' " 944 944 "channel setting instead.", set->key ); 945 945 -
irc.h
r3231485 re67e513 317 317 void irc_send_login( irc_t *irc ); 318 318 void irc_send_motd( irc_t *irc ); 319 void irc_usermsg( irc_t *irc, char *format, ... ); 319 const char *irc_user_msgdest( irc_user_t *iu ); 320 void irc_rootmsg( irc_t *irc, char *format, ... ); 321 void irc_usermsg( irc_user_t *iu, char *format, ... ); 322 void irc_usernotice( irc_user_t *iu, char *format, ... ); 320 323 void irc_send_join( irc_channel_t *ic, irc_user_t *iu ); 321 324 void irc_send_part( irc_channel_t *ic, irc_user_t *iu, const char *reason ); … … 350 353 void bee_irc_channel_update( irc_t *irc, irc_channel_t *ic, irc_user_t *iu ); 351 354 void bee_irc_user_nick_reset( irc_user_t *iu ); 352 void bee_irc_msg_from_user( irc_user_t *iu, const char *msg, time_t sent_at );353 355 354 356 #endif -
irc_commands.c
r3231485 re67e513 92 92 irc->status &= ~USTATUS_IDENTIFIED; 93 93 irc_umode_set( irc, "-R", 1 ); 94 irc_ usermsg( irc, "Changing nicks resets your identify status. "94 irc_rootmsg( irc, "Changing nicks resets your identify status. " 95 95 "Re-identify or register a new account if you want " 96 96 "your configuration to be saved. See \x02help " … … 433 433 { 434 434 set_setstr( &a->set, "password", password ); 435 irc_ usermsg( irc, "Password added to IM account "435 irc_rootmsg( irc, "Password added to IM account " 436 436 "%s(%s)", a->prpl->name, a->user ); 437 437 /* The IRC client may expect this. 491 suggests the OPER -
irc_im.c
r3231485 re67e513 193 193 } 194 194 195 void bee_irc_msg_from_user( irc_user_t *iu, const char *msg, time_t sent_at )196 { 197 195 static void bee_irc_msg_from_user( irc_user_t *iu, const char *msg, time_t sent_at ) 196 { 197 irc_t *irc = iu->irc; 198 198 bee_t *bee = irc->b; 199 irc_channel_t *ic = NULL;200 char * dst, *prefix = NULL;199 const char *dst; 200 char *prefix = NULL; 201 201 char *wrapped, *ts = NULL; 202 202 … … 204 204 ts = irc_format_timestamp( irc, sent_at ); 205 205 206 /* Too similar to irc_usermsg()... */ 207 if( iu->last_channel ) 208 { 209 if( iu->last_channel->flags & IRC_CHANNEL_JOINED ) 210 ic = iu->last_channel; 211 else 212 ic = irc_channel_with_user( irc, iu ); 213 } 214 215 if( ic ) 216 { 217 dst = ic->name; 206 dst = irc_user_msgdest(iu); 207 if(dst != irc->user->nick) { 208 /* if not messaging directly, call user by name */ 218 209 prefix = g_strdup_printf( "%s%s%s", irc->user->nick, set_getstr( &bee->set, "to_char" ), ts ? : "" ); 219 } 220 else 221 { 222 dst = irc->user->nick; 210 } else { 223 211 prefix = ts; 224 ts = NULL; 225 } 226 212 ts = NULL; /* don't doulbe-free */ 213 } 214 227 215 wrapped = word_wrap( msg, 425 ); 228 216 irc_send_msg( iu, "PRIVMSG", dst, wrapped, prefix ); … … 1000 988 else if( !acc->prpl->chat_join ) 1001 989 { 1002 irc_ usermsg( ic->irc, "Named chatrooms not supported on that account." );990 irc_rootmsg( ic->irc, "Named chatrooms not supported on that account." ); 1003 991 return SET_INVALID; 1004 992 } -
irc_send.c
r3231485 re67e513 110 110 } 111 111 112 void irc_usermsg( irc_t *irc, char *format, ... ) 113 { 112 const char *irc_user_msgdest( irc_user_t *iu ) 113 { 114 irc_t *irc = iu->irc; 114 115 irc_channel_t *ic = NULL; 115 irc_user_t *iu = irc->root; 116 char text[2048]; 117 va_list params; 118 char *dst; 119 120 va_start( params, format ); 121 g_vsnprintf( text, sizeof( text ), format, params ); 122 va_end( params ); 123 124 /* Too similar to bee_irc_user_msg()... */ 116 125 117 if( iu->last_channel ) 126 118 { … … 128 120 ic = iu->last_channel; 129 121 else 130 ic = irc_channel_with_user( irc, i rc->root);122 ic = irc_channel_with_user( irc, iu ); 131 123 } 132 124 133 125 if( ic ) 134 dst =ic->name;126 return ic->name; 135 127 else 136 dst = irc->user->nick; 137 138 irc_send_msg( irc->root, "PRIVMSG", dst, text, NULL ); 128 return irc->user->nick; 129 } 130 131 /* cmd = "PRIVMSG" or "NOTICE" */ 132 static void irc_usermsg_( const char *cmd, irc_user_t *iu, const char *format, va_list params ) 133 { 134 char text[2048]; 135 const char *dst; 136 137 g_vsnprintf( text, sizeof( text ), format, params ); 138 139 dst = irc_user_msgdest( iu ); 140 irc_send_msg( iu, cmd, dst, text, NULL ); 141 } 142 143 void irc_usermsg(irc_user_t *iu, char *format, ... ) 144 { 145 va_list params; 146 va_start( params, format ); 147 irc_usermsg_( "PRIVMSG", iu, format, params ); 148 va_end( params ); 149 } 150 151 void irc_usernotice(irc_user_t *iu, char *format, ... ) 152 { 153 va_list params; 154 va_start( params, format ); 155 irc_usermsg_( "NOTICE", iu, format, params ); 156 va_end( params ); 157 } 158 159 void irc_rootmsg( irc_t *irc, char *format, ... ) 160 { 161 va_list params; 162 va_start( params, format ); 163 irc_usermsg_( "PRIVMSG", irc->root, format, params ); 164 va_end( params ); 139 165 } 140 166 -
nick.c
r3231485 re67e513 243 243 int i; 244 244 245 irc_ usermsg( irc, "Warning: Almost had an infinite loop in nick_get()! "245 irc_rootmsg( irc, "Warning: Almost had an infinite loop in nick_get()! " 246 246 "This used to be a fatal BitlBee bug, but we tried to fix it. " 247 247 "This message should *never* appear anymore. " … … 249 249 "Please send all the following lines in your report:" ); 250 250 251 irc_ usermsg( irc, "Trying to get a sane nick for handle %s", bu->handle );251 irc_rootmsg( irc, "Trying to get a sane nick for handle %s", bu->handle ); 252 252 for( i = 0; i < MAX_NICK_LENGTH; i ++ ) 253 irc_ usermsg( irc, "Char %d: %c/%d", i, nick[i], nick[i] );254 255 irc_ usermsg( irc, "FAILED. Returning an insane nick now. Things might break. "253 irc_rootmsg( irc, "Char %d: %c/%d", i, nick[i], nick[i] ); 254 255 irc_rootmsg( irc, "FAILED. Returning an insane nick now. Things might break. " 256 256 "Good luck, and please don't forget to paste the lines up here " 257 257 "in #bitlbee on OFTC or in a mail to wilmer@gaast.net" ); -
otr.c
r3231485 re67e513 278 278 e = otrl_privkey_read(irc->otr->us, s); 279 279 if(e && e!=enoent) { 280 irc_ usermsg(irc, "otr load: %s: %s", s, gcry_strerror(e));280 irc_rootmsg(irc, "otr load: %s: %s", s, gcry_strerror(e)); 281 281 } 282 282 g_snprintf(s, 511, "%s%s.otr_fprints", global.conf->configdir, irc->user->nick); 283 283 e = otrl_privkey_read_fingerprints(irc->otr->us, s, NULL, NULL); 284 284 if(e && e!=enoent) { 285 irc_ usermsg(irc, "otr load: %s: %s", s, gcry_strerror(e));285 irc_rootmsg(irc, "otr load: %s: %s", s, gcry_strerror(e)); 286 286 } 287 287 … … 291 291 } 292 292 if(kg) { 293 irc_ usermsg(irc, "Notice: "293 irc_rootmsg(irc, "Notice: " 294 294 "The accounts above do not have OTR encryption keys associated with them, yet. " 295 295 "These keys are now being generated in the background. " … … 309 309 e = otrl_privkey_write_fingerprints(irc->otr->us, s); 310 310 if(e) { 311 irc_ usermsg(irc, "otr save: %s: %s", s, gcry_strerror(e));311 irc_rootmsg(irc, "otr save: %s: %s", s, gcry_strerror(e)); 312 312 } 313 313 chmod(s, 0600); … … 348 348 k = otrl_privkey_find(irc->otr->us, a->user, a->prpl->name); 349 349 if(k) { 350 irc_ usermsg(irc, "otr: %s/%s ready", a->user, a->prpl->name);350 irc_rootmsg(irc, "otr: %s/%s ready", a->user, a->prpl->name); 351 351 return 0; 352 352 } if(keygen_in_progress(irc, a->user, a->prpl->name)) { 353 irc_ usermsg(irc, "otr: keygen for %s/%s already in progress", a->user, a->prpl->name);353 irc_rootmsg(irc, "otr: keygen for %s/%s already in progress", a->user, a->prpl->name); 354 354 return 0; 355 355 } else { 356 irc_ usermsg(irc, "otr: starting background keygen for %s/%s", a->user, a->prpl->name);356 irc_rootmsg(irc, "otr: starting background keygen for %s/%s", a->user, a->prpl->name); 357 357 otr_keygen(irc, a->user, a->prpl->name); 358 358 return 1; … … 521 521 522 522 if(!cmd->command) { 523 irc_ usermsg(irc, "%s: unknown subcommand \"%s\", see \x02help otr\x02",523 irc_rootmsg(irc, "%s: unknown subcommand \"%s\", see \x02help otr\x02", 524 524 args[0], args[1]); 525 525 return; … … 527 527 528 528 if(!args[cmd->required_parameters+1]) { 529 irc_ usermsg(irc, "%s %s: not enough arguments (%d req.)",529 irc_rootmsg(irc, "%s %s: not enough arguments (%d req.)", 530 530 args[0], args[1], cmd->required_parameters); 531 531 return; … … 599 599 if (strcmp(accountname, recipient) == 0) { 600 600 /* huh? injecting messages to myself? */ 601 irc_ usermsg(irc, "note to self: %s", message);601 irc_rootmsg(irc, "note to self: %s", message); 602 602 } else { 603 603 /* need to drop some consts here :-( */ … … 618 618 strip_html(msg); 619 619 if(u) { 620 /* display message like it came from this particular user */621 bee_irc_msg_from_user(u, msg, 0 /* sent_at */);620 /* display as a notice from this particular user */ 621 irc_usernotice(u, "%s", msg); 622 622 } else { 623 irc_ usermsg(irc, "otr:%s", msg);623 irc_rootmsg(irc, "[otr] %s", msg); 624 624 } 625 625 … … 637 637 638 638 otrl_privkey_hash_to_human(hunam, fingerprint); 639 irc_ usermsg(irc, "new fingerprint for %s: %s",639 irc_rootmsg(irc, "new fingerprint for %s: %s", 640 640 peernick(irc, username, protocol), hunam); 641 641 } … … 667 667 if(!otr_update_modeflags(irc, u)) { 668 668 char *trust = u->flags & IRC_USER_OTR_TRUSTED ? "trusted" : "untrusted!"; 669 irc_ usermsg(irc, "conversation with %s is now off the record (%s)", u->nick, trust);669 irc_rootmsg(irc, "conversation with %s is now off the record (%s)", u->nick, trust); 670 670 } 671 671 } … … 687 687 otr_update_uflags(context, u); 688 688 if(!otr_update_modeflags(irc, u)) 689 irc_ usermsg(irc, "conversation with %s is now in the clear", u->nick);689 irc_rootmsg(irc, "conversation with %s is now in the clear", u->nick); 690 690 } 691 691 … … 708 708 if(!otr_update_modeflags(irc, u)) { 709 709 char *trust = u->flags & IRC_USER_OTR_TRUSTED ? "trusted" : "untrusted!"; 710 irc_ usermsg(irc, "otr connection with %s has been refreshed (%s)", u->nick, trust);710 irc_rootmsg(irc, "otr connection with %s has been refreshed (%s)", u->nick, trust); 711 711 } 712 712 } … … 752 752 u = irc_user_by_name(irc, args[1]); 753 753 if(!u || !u->bu || !u->bu->ic) { 754 irc_ usermsg(irc, "%s: unknown user", args[1]);754 irc_rootmsg(irc, "%s: unknown user", args[1]); 755 755 return; 756 756 } … … 777 777 u = irc_user_by_name(irc, args[1]); 778 778 if(!u || !u->bu || !u->bu->ic) { 779 irc_ usermsg(irc, "%s: unknown user", args[1]);779 irc_rootmsg(irc, "%s: unknown user", args[1]); 780 780 return; 781 781 } 782 782 if(!(u->bu->flags & BEE_USER_ONLINE)) { 783 irc_ usermsg(irc, "%s is offline", args[1]);783 irc_rootmsg(irc, "%s is offline", args[1]); 784 784 return; 785 785 } … … 808 808 u = irc_user_by_name(irc, args[1]); 809 809 if(!u || !u->bu || !u->bu->ic) { 810 irc_ usermsg(irc, "%s: unknown user", args[1]);810 irc_rootmsg(irc, "%s: unknown user", args[1]); 811 811 return; 812 812 } … … 815 815 u->bu->ic->acc->user, u->bu->ic->acc->prpl->name, 0, NULL, NULL, NULL); 816 816 if(!ctx) { 817 irc_ usermsg(irc, "%s: no otr context with user", args[1]);817 irc_rootmsg(irc, "%s: no otr context with user", args[1]); 818 818 return; 819 819 } … … 827 827 828 828 if(!*p || !*q) { 829 irc_ usermsg(irc, "failed: truncated fingerprint block %d", i+1);829 irc_rootmsg(irc, "failed: truncated fingerprint block %d", i+1); 830 830 return; 831 831 } … … 834 834 y = hexval(*q); 835 835 if(x<0) { 836 irc_ usermsg(irc, "failed: %d. hex digit of block %d out of range", 2*j+1, i+1);836 irc_rootmsg(irc, "failed: %d. hex digit of block %d out of range", 2*j+1, i+1); 837 837 return; 838 838 } 839 839 if(y<0) { 840 irc_ usermsg(irc, "failed: %d. hex digit of block %d out of range", 2*j+2, i+1);840 irc_rootmsg(irc, "failed: %d. hex digit of block %d out of range", 2*j+2, i+1); 841 841 return; 842 842 } … … 847 847 fp = otrl_context_find_fingerprint(ctx, raw, 0, NULL); 848 848 if(!fp) { 849 irc_ usermsg(irc, "failed: no such fingerprint for %s", args[1]);849 irc_rootmsg(irc, "failed: no such fingerprint for %s", args[1]); 850 850 } else { 851 851 char *trust = args[7] ? args[7] : "affirmed"; 852 852 otrl_context_set_trust(fp, trust); 853 irc_ usermsg(irc, "fingerprint match, trust set to \"%s\"", trust);853 irc_rootmsg(irc, "fingerprint match, trust set to \"%s\"", trust); 854 854 if(u->flags & IRC_USER_OTR_ENCRYPTED) 855 855 u->flags |= IRC_USER_OTR_TRUSTED; … … 879 879 ctx = otrl_context_find(irc->otr->us, handle, myhandle, protocol, 0, NULL, NULL, NULL); 880 880 if(!ctx) { 881 irc_ usermsg(irc, "no such context");881 irc_rootmsg(irc, "no such context"); 882 882 g_free(arg); 883 883 return; … … 886 886 irc_user_t *u = irc_user_by_name(irc, args[1]); 887 887 if(!u || !u->bu || !u->bu->ic) { 888 irc_ usermsg(irc, "%s: unknown user", args[1]);888 irc_rootmsg(irc, "%s: unknown user", args[1]); 889 889 g_free(arg); 890 890 return; … … 893 893 u->bu->ic->acc->prpl->name, 0, NULL, NULL, NULL); 894 894 if(!ctx) { 895 irc_ usermsg(irc, "no otr context with %s", args[1]);895 irc_rootmsg(irc, "no otr context with %s", args[1]); 896 896 g_free(arg); 897 897 return; … … 901 901 /* show how we resolved the (nick) argument, if we did */ 902 902 if(handle!=arg) { 903 irc_ usermsg(irc, "%s is %s/%s; we are %s/%s to them", args[1],903 irc_rootmsg(irc, "%s is %s/%s; we are %s/%s to them", args[1], 904 904 ctx->username, ctx->protocol, ctx->accountname, ctx->protocol); 905 905 } … … 916 916 n = atoi(args[1]); 917 917 if(n<0 || (!n && strcmp(args[1], "0"))) { 918 irc_ usermsg(irc, "%s: invalid account number", args[1]);918 irc_rootmsg(irc, "%s: invalid account number", args[1]); 919 919 return; 920 920 } … … 923 923 for(i=0; i<n && a; i++, a=a->next); 924 924 if(!a) { 925 irc_ usermsg(irc, "%s: no such account", args[1]);925 irc_rootmsg(irc, "%s: no such account", args[1]); 926 926 return; 927 927 } 928 928 929 929 if(keygen_in_progress(irc, a->user, a->prpl->name)) { 930 irc_ usermsg(irc, "keygen for account %d already in progress", n);930 irc_rootmsg(irc, "keygen for account %d already in progress", n); 931 931 return; 932 932 } … … 950 950 951 951 if(fp == fp->context->active_fingerprint) { 952 irc_ usermsg(irc, "that fingerprint is active, terminate otr connection first");952 irc_rootmsg(irc, "that fingerprint is active, terminate otr connection first"); 953 953 return; 954 954 } … … 966 966 967 967 if(ctx->msgstate == OTRL_MSGSTATE_ENCRYPTED) { 968 irc_ usermsg(irc, "active otr connection with %s, terminate it first",968 irc_rootmsg(irc, "active otr connection with %s, terminate it first", 969 969 peernick(irc, ctx->username, ctx->protocol)); 970 970 return; … … 998 998 999 999 if(!args[3]) { 1000 irc_ usermsg(irc, "otr %s %s: not enough arguments (2 req.)", args[0], args[1]);1000 irc_rootmsg(irc, "otr %s %s: not enough arguments (2 req.)", args[0], args[1]); 1001 1001 return; 1002 1002 } … … 1005 1005 u = irc_user_by_name(irc, args[2]); 1006 1006 if(!u || !u->bu || !u->bu->ic) { 1007 irc_ usermsg(irc, "%s: unknown user", args[2]);1007 irc_rootmsg(irc, "%s: unknown user", args[2]); 1008 1008 return; 1009 1009 } … … 1012 1012 u->bu->ic->acc->prpl->name, 0, NULL, NULL, NULL); 1013 1013 if(!ctx) { 1014 irc_ usermsg(irc, "no otr context with %s", args[2]);1014 irc_rootmsg(irc, "no otr context with %s", args[2]); 1015 1015 return; 1016 1016 } … … 1023 1023 1024 1024 if(fp == ctx->active_fingerprint) { 1025 irc_ usermsg(irc, "that fingerprint is active, terminate otr connection first");1025 irc_rootmsg(irc, "that fingerprint is active, terminate otr connection first"); 1026 1026 return; 1027 1027 } … … 1048 1048 u = irc_user_by_name(irc, args[2]); 1049 1049 if(!u || !u->bu || !u->bu->ic) { 1050 irc_ usermsg(irc, "%s: unknown user", args[2]);1050 irc_rootmsg(irc, "%s: unknown user", args[2]); 1051 1051 return; 1052 1052 } … … 1055 1055 u->bu->ic->acc->prpl->name, 0, NULL, NULL, NULL); 1056 1056 if(!ctx) { 1057 irc_ usermsg(irc, "no otr context with %s", args[2]);1057 irc_rootmsg(irc, "no otr context with %s", args[2]); 1058 1058 return; 1059 1059 } 1060 1060 1061 1061 if(ctx->msgstate == OTRL_MSGSTATE_ENCRYPTED) { 1062 irc_ usermsg(irc, "active otr connection with %s, terminate it first", args[2]);1062 irc_rootmsg(irc, "active otr connection with %s, terminate it first", args[2]); 1063 1063 return; 1064 1064 } … … 1093 1093 else 1094 1094 { 1095 irc_ usermsg(irc, "otr %s: unknown subcommand \"%s\", see \x02help otr forget\x02",1095 irc_rootmsg(irc, "otr %s: unknown subcommand \"%s\", see \x02help otr forget\x02", 1096 1096 args[0], args[1]); 1097 1097 } … … 1119 1119 if(!context) { 1120 1120 /* huh? out of memory or what? */ 1121 irc_ usermsg(irc, "smp: failed to get otr context for %s", u->nick);1121 irc_rootmsg(irc, "smp: failed to get otr context for %s", u->nick); 1122 1122 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1123 1123 otrl_sm_state_free(context->smstate); … … 1127 1127 1128 1128 if (context->smstate->sm_prog_state == OTRL_SMP_PROG_CHEATED) { 1129 irc_ usermsg(irc, "smp %s: opponent violated protocol, aborting",1129 irc_rootmsg(irc, "smp %s: opponent violated protocol, aborting", 1130 1130 u->nick); 1131 1131 otrl_message_abort_smp(us, ops, u->bu->ic, context); … … 1137 1137 if (tlv) { 1138 1138 if (nextMsg != OTRL_SMP_EXPECT1) { 1139 irc_ usermsg(irc, "smp %s: spurious SMP1Q received, aborting", u->nick);1139 irc_rootmsg(irc, "smp %s: spurious SMP1Q received, aborting", u->nick); 1140 1140 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1141 1141 otrl_sm_state_free(context->smstate); 1142 1142 } else { 1143 1143 char *question = g_strndup((char *)tlv->data, tlv->len); 1144 irc_ usermsg(irc, "smp: initiated by %s with question: \x02\"%s\"\x02", u->nick,1144 irc_rootmsg(irc, "smp: initiated by %s with question: \x02\"%s\"\x02", u->nick, 1145 1145 question); 1146 irc_ usermsg(irc, "smp: respond with \x02otr smp %s <answer>\x02",1146 irc_rootmsg(irc, "smp: respond with \x02otr smp %s <answer>\x02", 1147 1147 u->nick); 1148 1148 g_free(question); … … 1153 1153 if (tlv) { 1154 1154 if (nextMsg != OTRL_SMP_EXPECT1) { 1155 irc_ usermsg(irc, "smp %s: spurious SMP1 received, aborting", u->nick);1155 irc_rootmsg(irc, "smp %s: spurious SMP1 received, aborting", u->nick); 1156 1156 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1157 1157 otrl_sm_state_free(context->smstate); 1158 1158 } else { 1159 irc_ usermsg(irc, "smp: initiated by %s"1159 irc_rootmsg(irc, "smp: initiated by %s" 1160 1160 " - respond with \x02otr smp %s <secret>\x02", 1161 1161 u->nick, u->nick); … … 1166 1166 if (tlv) { 1167 1167 if (nextMsg != OTRL_SMP_EXPECT2) { 1168 irc_ usermsg(irc, "smp %s: spurious SMP2 received, aborting", u->nick);1168 irc_rootmsg(irc, "smp %s: spurious SMP2 received, aborting", u->nick); 1169 1169 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1170 1170 otrl_sm_state_free(context->smstate); … … 1177 1177 if (tlv) { 1178 1178 if (nextMsg != OTRL_SMP_EXPECT3) { 1179 irc_ usermsg(irc, "smp %s: spurious SMP3 received, aborting", u->nick);1179 irc_rootmsg(irc, "smp %s: spurious SMP3 received, aborting", u->nick); 1180 1180 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1181 1181 otrl_sm_state_free(context->smstate); … … 1184 1184 if(context->smstate->sm_prog_state == OTRL_SMP_PROG_SUCCEEDED) { 1185 1185 if(context->smstate->received_question) { 1186 irc_ usermsg(irc, "smp %s: correct answer, you are trusted",1186 irc_rootmsg(irc, "smp %s: correct answer, you are trusted", 1187 1187 u->nick); 1188 1188 } else { 1189 irc_ usermsg(irc, "smp %s: secrets proved equal, fingerprint trusted",1189 irc_rootmsg(irc, "smp %s: secrets proved equal, fingerprint trusted", 1190 1190 u->nick); 1191 1191 } 1192 1192 } else { 1193 1193 if(context->smstate->received_question) { 1194 irc_ usermsg(irc, "smp %s: wrong answer, you are not trusted",1194 irc_rootmsg(irc, "smp %s: wrong answer, you are not trusted", 1195 1195 u->nick); 1196 1196 } else { 1197 irc_ usermsg(irc, "smp %s: secrets did not match, fingerprint not trusted",1197 irc_rootmsg(irc, "smp %s: secrets did not match, fingerprint not trusted", 1198 1198 u->nick); 1199 1199 } … … 1206 1206 if (tlv) { 1207 1207 if (nextMsg != OTRL_SMP_EXPECT4) { 1208 irc_ usermsg(irc, "smp %s: spurious SMP4 received, aborting", u->nick);1208 irc_rootmsg(irc, "smp %s: spurious SMP4 received, aborting", u->nick); 1209 1209 otrl_message_abort_smp(us, ops, u->bu->ic, context); 1210 1210 otrl_sm_state_free(context->smstate); … … 1212 1212 /* SMP4 received, otrl_message_receiving will have set fp trust */ 1213 1213 if(context->smstate->sm_prog_state == OTRL_SMP_PROG_SUCCEEDED) { 1214 irc_ usermsg(irc, "smp %s: secrets proved equal, fingerprint trusted",1214 irc_rootmsg(irc, "smp %s: secrets proved equal, fingerprint trusted", 1215 1215 u->nick); 1216 1216 } else { 1217 irc_ usermsg(irc, "smp %s: secrets did not match, fingerprint not trusted",1217 irc_rootmsg(irc, "smp %s: secrets did not match, fingerprint not trusted", 1218 1218 u->nick); 1219 1219 } … … 1224 1224 tlv = otrl_tlv_find(tlvs, OTRL_TLV_SMP_ABORT); 1225 1225 if (tlv) { 1226 irc_ usermsg(irc, "smp: received abort from %s", u->nick);1226 irc_rootmsg(irc, "smp: received abort from %s", u->nick); 1227 1227 otrl_sm_state_free(context->smstate); 1228 1228 /* smp is in back in EXPECT1 */ … … 1239 1239 u = irc_user_by_name(irc, nick); 1240 1240 if(!u || !u->bu || !u->bu->ic) { 1241 irc_ usermsg(irc, "%s: unknown user", nick);1241 irc_rootmsg(irc, "%s: unknown user", nick); 1242 1242 return; 1243 1243 } 1244 1244 if(!(u->bu->flags & BEE_USER_ONLINE)) { 1245 irc_ usermsg(irc, "%s is offline", nick);1245 irc_rootmsg(irc, "%s is offline", nick); 1246 1246 return; 1247 1247 } … … 1250 1250 u->bu->ic->acc->user, u->bu->ic->acc->prpl->name, 0, NULL, NULL, NULL); 1251 1251 if(!ctx || ctx->msgstate != OTRL_MSGSTATE_ENCRYPTED) { 1252 irc_ usermsg(irc, "smp: otr inactive with %s, try \x02otr connect"1252 irc_rootmsg(irc, "smp: otr inactive with %s, try \x02otr connect" 1253 1253 " %s\x02", nick, nick); 1254 1254 return; … … 1265 1265 if(question) { 1266 1266 /* this was 'otr smpq', just initiate */ 1267 irc_ usermsg(irc, "smp: initiating with %s...", u->nick);1267 irc_rootmsg(irc, "smp: initiating with %s...", u->nick); 1268 1268 otrl_message_initiate_smp_q(irc->otr->us, &otr_ops, u->bu->ic, ctx, 1269 1269 question, (unsigned char *)secret, strlen(secret)); … … 1274 1274 is completed or aborted! */ 1275 1275 if(ctx->smstate->secret == NULL) { 1276 irc_ usermsg(irc, "smp: initiating with %s...", u->nick);1276 irc_rootmsg(irc, "smp: initiating with %s...", u->nick); 1277 1277 otrl_message_initiate_smp(irc->otr->us, &otr_ops, 1278 1278 u->bu->ic, ctx, (unsigned char *)secret, strlen(secret)); … … 1281 1281 /* if we're still in EXPECT1 but smstate is initialized, we must have 1282 1282 received the SMP1, so let's issue a response */ 1283 irc_ usermsg(irc, "smp: responding to %s...", u->nick);1283 irc_rootmsg(irc, "smp: responding to %s...", u->nick); 1284 1284 otrl_message_respond_smp(irc->otr->us, &otr_ops, 1285 1285 u->bu->ic, ctx, (unsigned char *)secret, strlen(secret)); … … 1396 1396 } 1397 1397 if(fp == ctx->active_fingerprint) { 1398 irc_ usermsg(irc, " \x02%s (%s)\x02", human, trust);1398 irc_rootmsg(irc, " \x02%s (%s)\x02", human, trust); 1399 1399 } else { 1400 irc_ usermsg(irc, " %s (%s)", human, trust);1400 irc_rootmsg(irc, " %s (%s)", human, trust); 1401 1401 } 1402 1402 } 1403 1403 if(count==0) 1404 irc_ usermsg(irc, " (none)");1404 irc_rootmsg(irc, " (none)"); 1405 1405 } 1406 1406 … … 1421 1421 1422 1422 if(n>=40) { 1423 irc_ usermsg(irc, "too many fingerprint digits given, expected at most 40");1423 irc_rootmsg(irc, "too many fingerprint digits given, expected at most 40"); 1424 1424 return NULL; 1425 1425 } … … 1428 1428 *(p++) = c; 1429 1429 } else { 1430 irc_ usermsg(irc, "invalid hex digit '%c' in block %d", args[i][j], i+1);1430 irc_rootmsg(irc, "invalid hex digit '%c' in block %d", args[i][j], i+1); 1431 1431 return NULL; 1432 1432 } … … 1449 1449 } 1450 1450 if(!fp) { 1451 irc_ usermsg(irc, "%s: no match", prefix);1451 irc_rootmsg(irc, "%s: no match", prefix); 1452 1452 return NULL; 1453 1453 } … … 1462 1462 } 1463 1463 if(fp2) { 1464 irc_ usermsg(irc, "%s: multiple matches", prefix);1464 irc_rootmsg(irc, "%s: multiple matches", prefix); 1465 1465 return NULL; 1466 1466 } … … 1485 1485 1486 1486 if(n>=40) { 1487 irc_ usermsg(irc, "too many fingerprint digits given, expected at most 40");1487 irc_rootmsg(irc, "too many fingerprint digits given, expected at most 40"); 1488 1488 return NULL; 1489 1489 } … … 1492 1492 *(p++) = c; 1493 1493 } else { 1494 irc_ usermsg(irc, "invalid hex digit '%c' in block %d", args[i][j], i+1);1494 irc_rootmsg(irc, "invalid hex digit '%c' in block %d", args[i][j], i+1); 1495 1495 return NULL; 1496 1496 } … … 1513 1513 } 1514 1514 if(!k) { 1515 irc_ usermsg(irc, "%s: no match", prefix);1515 irc_rootmsg(irc, "%s: no match", prefix); 1516 1516 return NULL; 1517 1517 } … … 1526 1526 } 1527 1527 if(k2) { 1528 irc_ usermsg(irc, "%s: multiple matches", prefix);1528 irc_rootmsg(irc, "%s: multiple matches", prefix); 1529 1529 return NULL; 1530 1530 } … … 1541 1541 1542 1542 /* list all privkeys (including ones being generated) */ 1543 irc_ usermsg(irc, "\x1fprivate keys:\x1f");1543 irc_rootmsg(irc, "\x1fprivate keys:\x1f"); 1544 1544 for(key=irc->otr->us->privkey_root; key; key=key->next) { 1545 1545 const char *hash; … … 1547 1547 switch(key->pubkey_type) { 1548 1548 case OTRL_PUBKEY_TYPE_DSA: 1549 irc_ usermsg(irc, " %s/%s - DSA", key->accountname, key->protocol);1549 irc_rootmsg(irc, " %s/%s - DSA", key->accountname, key->protocol); 1550 1550 break; 1551 1551 default: 1552 irc_ usermsg(irc, " %s/%s - type %d", key->accountname, key->protocol,1552 irc_rootmsg(irc, " %s/%s - type %d", key->accountname, key->protocol, 1553 1553 key->pubkey_type); 1554 1554 } … … 1559 1559 hash = otrl_privkey_fingerprint(irc->otr->us, human, key->accountname, key->protocol); 1560 1560 if(hash) /* should always succeed */ 1561 irc_ usermsg(irc, " %s", human);1561 irc_rootmsg(irc, " %s", human); 1562 1562 } 1563 1563 if(irc->otr->sent_accountname) { 1564 irc_ usermsg(irc, " %s/%s - DSA", irc->otr->sent_accountname,1564 irc_rootmsg(irc, " %s/%s - DSA", irc->otr->sent_accountname, 1565 1565 irc->otr->sent_protocol); 1566 irc_ usermsg(irc, " (being generated)");1566 irc_rootmsg(irc, " (being generated)"); 1567 1567 } 1568 1568 for(kg=irc->otr->todo; kg; kg=kg->next) { 1569 irc_ usermsg(irc, " %s/%s - DSA", kg->accountname, kg->protocol);1570 irc_ usermsg(irc, " (queued)");1569 irc_rootmsg(irc, " %s/%s - DSA", kg->accountname, kg->protocol); 1570 irc_rootmsg(irc, " (queued)"); 1571 1571 } 1572 1572 if(key == irc->otr->us->privkey_root && 1573 1573 !irc->otr->sent_accountname && 1574 1574 kg == irc->otr->todo) 1575 irc_ usermsg(irc, " (none)");1575 irc_rootmsg(irc, " (none)"); 1576 1576 1577 1577 /* list all contexts */ 1578 irc_ usermsg(irc, "%s", "");1579 irc_ usermsg(irc, "\x1f" "connection contexts:\x1f (bold=currently encrypted)");1578 irc_rootmsg(irc, "%s", ""); 1579 irc_rootmsg(irc, "\x1f" "connection contexts:\x1f (bold=currently encrypted)"); 1580 1580 for(ctx=irc->otr->us->context_root; ctx; ctx=ctx->next) {\ 1581 1581 irc_user_t *u; … … 1591 1591 1592 1592 if(ctx->msgstate == OTRL_MSGSTATE_ENCRYPTED) { 1593 irc_ usermsg(irc, " \x02%s\x02", userstring);1593 irc_rootmsg(irc, " \x02%s\x02", userstring); 1594 1594 } else { 1595 irc_ usermsg(irc, " %s", userstring);1595 irc_rootmsg(irc, " %s", userstring); 1596 1596 } 1597 1597 … … 1599 1599 } 1600 1600 if(ctx == irc->otr->us->context_root) 1601 irc_ usermsg(irc, " (none)");1601 irc_rootmsg(irc, " (none)"); 1602 1602 } 1603 1603 … … 1606 1606 switch(ctx->otr_offer) { 1607 1607 case OFFER_NOT: 1608 irc_ usermsg(irc, " otr offer status: none sent");1608 irc_rootmsg(irc, " otr offer status: none sent"); 1609 1609 break; 1610 1610 case OFFER_SENT: 1611 irc_ usermsg(irc, " otr offer status: awaiting reply");1611 irc_rootmsg(irc, " otr offer status: awaiting reply"); 1612 1612 break; 1613 1613 case OFFER_ACCEPTED: 1614 irc_ usermsg(irc, " otr offer status: accepted our offer");1614 irc_rootmsg(irc, " otr offer status: accepted our offer"); 1615 1615 break; 1616 1616 case OFFER_REJECTED: 1617 irc_ usermsg(irc, " otr offer status: ignored our offer");1617 irc_rootmsg(irc, " otr offer status: ignored our offer"); 1618 1618 break; 1619 1619 default: 1620 irc_ usermsg(irc, " otr offer status: %d", ctx->otr_offer);1620 irc_rootmsg(irc, " otr offer status: %d", ctx->otr_offer); 1621 1621 } 1622 1622 1623 1623 switch(ctx->msgstate) { 1624 1624 case OTRL_MSGSTATE_PLAINTEXT: 1625 irc_ usermsg(irc, " connection state: cleartext");1625 irc_rootmsg(irc, " connection state: cleartext"); 1626 1626 break; 1627 1627 case OTRL_MSGSTATE_ENCRYPTED: 1628 irc_ usermsg(irc, " connection state: encrypted (v%d)", ctx->protocol_version);1628 irc_rootmsg(irc, " connection state: encrypted (v%d)", ctx->protocol_version); 1629 1629 break; 1630 1630 case OTRL_MSGSTATE_FINISHED: 1631 irc_ usermsg(irc, " connection state: shut down");1631 irc_rootmsg(irc, " connection state: shut down"); 1632 1632 break; 1633 1633 default: 1634 irc_ usermsg(irc, " connection state: %d", ctx->msgstate);1635 } 1636 1637 irc_ usermsg(irc, " fingerprints: (bold=active)");1634 irc_rootmsg(irc, " connection state: %d", ctx->msgstate); 1635 } 1636 1637 irc_rootmsg(irc, " fingerprints: (bold=active)"); 1638 1638 show_fingerprints(irc, ctx); 1639 1639 } … … 1675 1675 1676 1676 if(pipe(to) < 0 || pipe(from) < 0) { 1677 irc_ usermsg(irc, "otr keygen: couldn't create pipe: %s", strerror(errno));1677 irc_rootmsg(irc, "otr keygen: couldn't create pipe: %s", strerror(errno)); 1678 1678 return; 1679 1679 } … … 1682 1682 fromf = fdopen(from[0], "r"); 1683 1683 if(!tof || !fromf) { 1684 irc_ usermsg(irc, "otr keygen: couldn't streamify pipe: %s", strerror(errno));1684 irc_rootmsg(irc, "otr keygen: couldn't streamify pipe: %s", strerror(errno)); 1685 1685 return; 1686 1686 } … … 1688 1688 p = fork(); 1689 1689 if(p<0) { 1690 irc_ usermsg(irc, "otr keygen: couldn't fork: %s", strerror(errno));1690 irc_rootmsg(irc, "otr keygen: couldn't fork: %s", strerror(errno)); 1691 1691 return; 1692 1692 } … … 1768 1768 myfgets(msg, 512, irc->otr->from); 1769 1769 1770 irc_ usermsg(irc, "%s", msg);1770 irc_rootmsg(irc, "%s", msg); 1771 1771 if(filename[0]) { 1772 1772 char *kf = g_strdup_printf("%s%s.otr_keys", global.conf->configdir, irc->user->nick); … … 1842 1842 1843 1843 if(keygen_in_progress(irc, acc->user, acc->prpl->name)) { 1844 irc_ usermsg(irc, "keygen for %s/%s already in progress",1844 irc_rootmsg(irc, "keygen for %s/%s already in progress", 1845 1845 acc->user, acc->prpl->name); 1846 1846 } else { 1847 irc_ usermsg(irc, "starting background keygen for %s/%s",1847 irc_rootmsg(irc, "starting background keygen for %s/%s", 1848 1848 acc->user, acc->prpl->name); 1849 irc_ usermsg(irc, "you will be notified when it completes");1849 irc_rootmsg(irc, "you will be notified when it completes"); 1850 1850 otr_keygen(irc, acc->user, acc->prpl->name); 1851 1851 } 1852 1852 } 1853 1853 1854 /* vim: noet ts=4 sw=4*/1854 /* vim: set noet ts=4 sw=4: */ -
protocols/nogaim.c
r3231485 re67e513 216 216 if( a ) 217 217 /* FIXME(wilmer): ui_log callback or so */ 218 irc_ usermsg( ic->bee->ui_data, "%s(%s) - %s", ic->acc->prpl->name, ic->acc->user, text );218 irc_rootmsg( ic->bee->ui_data, "%s(%s) - %s", ic->acc->prpl->name, ic->acc->user, text ); 219 219 else 220 irc_ usermsg( ic->bee->ui_data, "%s - %s", ic->acc->prpl->name, text );220 irc_rootmsg( ic->bee->ui_data, "%s - %s", ic->acc->prpl->name, text ); 221 221 222 222 g_free( text ); -
protocols/purple/purple.c
r3231485 re67e513 181 181 /** No way to talk to the user right now, invent one when 182 182 this becomes important. 183 irc_ usermsg( acc->irc, "Setting with unknown type: %s (%d) Expect stuff to break..\n",183 irc_rootmsg( acc->irc, "Setting with unknown type: %s (%d) Expect stuff to break..\n", 184 184 name, purple_account_option_get_type( o ) ); 185 185 */ -
query.c
r3231485 re67e513 150 150 imcb_log( q->ic, "Accepted: %s", q->question ); 151 151 else 152 irc_ usermsg( irc, "Accepted: %s", q->question );152 irc_rootmsg( irc, "Accepted: %s", q->question ); 153 153 if( q->yes ) 154 154 q->yes( q->data ); … … 159 159 imcb_log( q->ic, "Rejected: %s", q->question ); 160 160 else 161 irc_ usermsg( irc, "Rejected: %s", q->question );161 irc_rootmsg( irc, "Rejected: %s", q->question ); 162 162 if( q->no ) 163 163 q->no( q->data ); … … 179 179 else 180 180 { 181 irc_ usermsg( irc, "New request: %s\nYou can use the \2yes\2/\2no\2 commands to accept/reject this request.", q->question );181 irc_rootmsg( irc, "New request: %s\nYou can use the \2yes\2/\2no\2 commands to accept/reject this request.", q->question ); 182 182 } 183 183 } -
root_commands.c
r3231485 re67e513 42 42 if( cmd[blaat] == NULL ) \ 43 43 { \ 44 irc_ usermsg( irc, "Not enough parameters given (need %d).", x ); \44 irc_rootmsg( irc, "Not enough parameters given (need %d).", x ); \ 45 45 return y; \ 46 46 } \ … … 69 69 } 70 70 71 irc_ usermsg( irc, "Unknown command: %s. Please use \x02help commands\x02 to get a list of available commands.", cmd[0] );71 irc_rootmsg( irc, "Unknown command: %s. Please use \x02help commands\x02 to get a list of available commands.", cmd[0] ); 72 72 } 73 73 … … 90 90 if( s ) 91 91 { 92 irc_ usermsg( irc, "%s", s );92 irc_rootmsg( irc, "%s", s ); 93 93 g_free( s ); 94 94 } 95 95 else 96 96 { 97 irc_ usermsg( irc, "Error opening helpfile." );97 irc_rootmsg( irc, "Error opening helpfile." ); 98 98 } 99 99 } … … 110 110 if( irc->status & USTATUS_IDENTIFIED ) 111 111 { 112 irc_ usermsg( irc, "You're already logged in." );112 irc_rootmsg( irc, "You're already logged in." ); 113 113 return; 114 114 } … … 128 128 else if( irc->b->accounts != NULL ) 129 129 { 130 irc_ usermsg( irc,130 irc_rootmsg( irc, 131 131 "You're trying to identify yourself, but already have " 132 132 "at least one IM account set up. " … … 138 138 if( password == NULL ) 139 139 { 140 irc_ usermsg( irc, "About to identify, use /OPER to enter the password" );140 irc_rootmsg( irc, "About to identify, use /OPER to enter the password" ); 141 141 irc->status |= OPER_HACK_IDENTIFY; 142 142 return; … … 150 150 switch (status) { 151 151 case STORAGE_INVALID_PASSWORD: 152 irc_ usermsg( irc, "Incorrect password" );152 irc_rootmsg( irc, "Incorrect password" ); 153 153 break; 154 154 case STORAGE_NO_SUCH_USER: 155 irc_ usermsg( irc, "The nick is (probably) not registered" );155 irc_rootmsg( irc, "The nick is (probably) not registered" ); 156 156 break; 157 157 case STORAGE_OK: 158 irc_ usermsg( irc, "Password accepted%s",158 irc_rootmsg( irc, "Password accepted%s", 159 159 load ? ", settings and accounts loaded" : "" ); 160 160 irc_setpass( irc, password ); … … 192 192 case STORAGE_OTHER_ERROR: 193 193 default: 194 irc_ usermsg( irc, "Unknown error while loading configuration" );194 irc_rootmsg( irc, "Unknown error while loading configuration" ); 195 195 break; 196 196 } … … 215 215 if( global.conf->authmode == AUTHMODE_REGISTERED ) 216 216 { 217 irc_ usermsg( irc, "This server does not allow registering new accounts" );217 irc_rootmsg( irc, "This server does not allow registering new accounts" ); 218 218 return; 219 219 } … … 221 221 if( cmd[1] == NULL ) 222 222 { 223 irc_ usermsg( irc, "About to register, use /OPER to enter the password" );223 irc_rootmsg( irc, "About to register, use /OPER to enter the password" ); 224 224 irc->status |= OPER_HACK_REGISTER; 225 225 return; … … 228 228 switch( storage_save( irc, cmd[1], FALSE ) ) { 229 229 case STORAGE_ALREADY_EXISTS: 230 irc_ usermsg( irc, "Nick is already registered" );230 irc_rootmsg( irc, "Nick is already registered" ); 231 231 break; 232 232 233 233 case STORAGE_OK: 234 irc_ usermsg( irc, "Account successfully created" );234 irc_rootmsg( irc, "Account successfully created" ); 235 235 irc_setpass( irc, cmd[1] ); 236 236 irc->status |= USTATUS_IDENTIFIED; … … 245 245 246 246 default: 247 irc_ usermsg( irc, "Error registering" );247 irc_rootmsg( irc, "Error registering" ); 248 248 break; 249 249 } … … 257 257 switch (status) { 258 258 case STORAGE_NO_SUCH_USER: 259 irc_ usermsg( irc, "That account does not exist" );259 irc_rootmsg( irc, "That account does not exist" ); 260 260 break; 261 261 case STORAGE_INVALID_PASSWORD: 262 irc_ usermsg( irc, "Password invalid" );262 irc_rootmsg( irc, "Password invalid" ); 263 263 break; 264 264 case STORAGE_OK: … … 266 266 irc->status &= ~USTATUS_IDENTIFIED; 267 267 irc_umode_set( irc, "-R", 1 ); 268 irc_ usermsg( irc, "Account `%s' removed", irc->user->nick );268 irc_rootmsg( irc, "Account `%s' removed", irc->user->nick ); 269 269 break; 270 270 default: 271 irc_ usermsg( irc, "Error: `%d'", status );271 irc_rootmsg( irc, "Error: `%d'", status ); 272 272 break; 273 273 } … … 277 277 { 278 278 if( ( irc->status & USTATUS_IDENTIFIED ) == 0 ) 279 irc_ usermsg( irc, "Please create an account first" );279 irc_rootmsg( irc, "Please create an account first" ); 280 280 else if( storage_save( irc, NULL, TRUE ) == STORAGE_OK ) 281 irc_ usermsg( irc, "Configuration saved" );282 else 283 irc_ usermsg( irc, "Configuration could not be saved!" );281 irc_rootmsg( irc, "Configuration saved" ); 282 else 283 irc_rootmsg( irc, "Configuration could not be saved!" ); 284 284 } 285 285 … … 290 290 291 291 if( ( val = set_getstr( head, key ) ) ) 292 irc_ usermsg( irc, "%s = `%s'", key, val );292 irc_rootmsg( irc, "%s = `%s'", key, val ); 293 293 else if( !( set = set_find( head, key ) ) ) 294 294 { 295 irc_ usermsg( irc, "Setting `%s' does not exist.", key );295 irc_rootmsg( irc, "Setting `%s' does not exist.", key ); 296 296 if( *head == irc->b->set ) 297 irc_ usermsg( irc, "It might be an account or channel setting. "297 irc_rootmsg( irc, "It might be an account or channel setting. " 298 298 "See \x02help account set\x02 and \x02help channel set\x02." ); 299 299 } 300 300 else if( set->flags & SET_PASSWORD ) 301 irc_ usermsg( irc, "%s = `********' (hidden)", key );302 else 303 irc_ usermsg( irc, "%s is empty", key );301 irc_rootmsg( irc, "%s = `********' (hidden)", key ); 302 else 303 irc_rootmsg( irc, "%s is empty", key ); 304 304 } 305 305 … … 344 344 feedback. */ 345 345 if( st ) 346 irc_ usermsg( irc, "Setting changed successfully" );346 irc_rootmsg( irc, "Setting changed successfully" ); 347 347 else 348 irc_ usermsg( irc, "Failed to change setting" );348 irc_rootmsg( irc, "Failed to change setting" ); 349 349 } 350 350 else … … 377 377 if( a->ic && s && s->flags & ACC_SET_OFFLINE_ONLY ) 378 378 { 379 irc_ usermsg( irc, "This setting can only be changed when the account is %s-line", "off" );379 irc_rootmsg( irc, "This setting can only be changed when the account is %s-line", "off" ); 380 380 return 0; 381 381 } 382 382 else if( !a->ic && s && s->flags & ACC_SET_ONLINE_ONLY ) 383 383 { 384 irc_ usermsg( irc, "This setting can only be changed when the account is %s-line", "on" );384 irc_rootmsg( irc, "This setting can only be changed when the account is %s-line", "on" ); 385 385 return 0; 386 386 } … … 396 396 if( global.conf->authmode == AUTHMODE_REGISTERED && !( irc->status & USTATUS_IDENTIFIED ) ) 397 397 { 398 irc_ usermsg( irc, "This server only accepts registered users" );398 irc_rootmsg( irc, "This server only accepts registered users" ); 399 399 return; 400 400 } … … 413 413 if( strcmp( a->pass, PASSWORD_PENDING ) == 0 ) 414 414 { 415 irc_ usermsg( irc, "Enter password for account %s(%s) "415 irc_rootmsg( irc, "Enter password for account %s(%s) " 416 416 "first (use /OPER)", a->prpl->name, a->user ); 417 417 return; … … 425 425 if( prpl == NULL ) 426 426 { 427 irc_ usermsg( irc, "Unknown protocol" );427 irc_rootmsg( irc, "Unknown protocol" ); 428 428 return; 429 429 } … … 431 431 for( a = irc->b->accounts; a; a = a->next ) 432 432 if( a->prpl == prpl && prpl->handle_cmp( a->user, cmd[3] ) == 0 ) 433 irc_ usermsg( irc, "Warning: You already have an account with "433 irc_rootmsg( irc, "Warning: You already have an account with " 434 434 "protocol `%s' and username `%s'. Are you accidentally " 435 435 "trying to add it twice?", prpl->name, cmd[3] ); … … 438 438 if( cmd[5] ) 439 439 { 440 irc_ usermsg( irc, "Warning: Passing a servername/other flags to `account add' "440 irc_rootmsg( irc, "Warning: Passing a servername/other flags to `account add' " 441 441 "is now deprecated. Use `account set' instead." ); 442 442 set_setstr( &a->set, "server", cmd[5] ); 443 443 } 444 444 445 irc_ usermsg( irc, "Account successfully added%s", cmd[4] ? "" :445 irc_rootmsg( irc, "Account successfully added%s", cmd[4] ? "" : 446 446 ", now use /OPER to enter the password" ); 447 447 … … 453 453 454 454 if( strchr( irc->umode, 'b' ) ) 455 irc_ usermsg( irc, "Account list:" );455 irc_rootmsg( irc, "Account list:" ); 456 456 457 457 for( a = irc->b->accounts; a; a = a->next ) … … 468 468 con = ""; 469 469 470 irc_ usermsg( irc, "%2d (%s): %s, %s%s", i, a->tag, a->prpl->name, a->user, con );470 irc_rootmsg( irc, "%2d (%s): %s, %s%s", i, a->tag, a->prpl->name, a->user, con ); 471 471 472 472 i ++; 473 473 } 474 irc_ usermsg( irc, "End of account list" );474 irc_rootmsg( irc, "End of account list" ); 475 475 476 476 return; … … 484 484 if ( irc->b->accounts ) 485 485 { 486 irc_ usermsg( irc, "Trying to get all accounts connected..." );486 irc_rootmsg( irc, "Trying to get all accounts connected..." ); 487 487 488 488 for( a = irc->b->accounts; a; a = a->next ) … … 490 490 { 491 491 if( strcmp( a->pass, PASSWORD_PENDING ) == 0 ) 492 irc_ usermsg( irc, "Enter password for account %s(%s) "492 irc_rootmsg( irc, "Enter password for account %s(%s) " 493 493 "first (use /OPER)", a->prpl->name, a->user ); 494 494 else … … 498 498 else 499 499 { 500 irc_ usermsg( irc, "No accounts known. Use `account add' to add one." );500 irc_rootmsg( irc, "No accounts known. Use `account add' to add one." ); 501 501 } 502 502 … … 505 505 else if( len >= 2 && g_strncasecmp( cmd[1], "off", len ) == 0 ) 506 506 { 507 irc_ usermsg( irc, "Deactivating all active (re)connections..." );507 irc_rootmsg( irc, "Deactivating all active (re)connections..." ); 508 508 509 509 for( a = irc->b->accounts; a; a = a->next ) … … 530 530 ( a = account_get( irc->b, cmd[1] ) ) == NULL ) 531 531 { 532 irc_ usermsg( irc, "Could not find account `%s'. Note that the syntax "532 irc_rootmsg( irc, "Could not find account `%s'. Note that the syntax " 533 533 "of the account command changed, see \x02help account\x02.", cmd[1] ); 534 534 … … 540 540 if( a->ic ) 541 541 { 542 irc_ usermsg( irc, "Account is still logged in, can't delete" );542 irc_rootmsg( irc, "Account is still logged in, can't delete" ); 543 543 } 544 544 else 545 545 { 546 546 account_del( irc->b, a ); 547 irc_ usermsg( irc, "Account deleted" );547 irc_rootmsg( irc, "Account deleted" ); 548 548 } 549 549 } … … 551 551 { 552 552 if( a->ic ) 553 irc_ usermsg( irc, "Account already online" );553 irc_rootmsg( irc, "Account already online" ); 554 554 else if( strcmp( a->pass, PASSWORD_PENDING ) == 0 ) 555 irc_ usermsg( irc, "Enter password for account %s(%s) "555 irc_rootmsg( irc, "Enter password for account %s(%s) " 556 556 "first (use /OPER)", a->prpl->name, a->user ); 557 557 else … … 567 567 { 568 568 cancel_auto_reconnect( a ); 569 irc_ usermsg( irc, "Reconnect cancelled" );570 } 571 else 572 { 573 irc_ usermsg( irc, "Account already offline" );569 irc_rootmsg( irc, "Reconnect cancelled" ); 570 } 571 else 572 { 573 irc_rootmsg( irc, "Account already offline" ); 574 574 } 575 575 } … … 580 580 else 581 581 { 582 irc_ usermsg( irc, "Unknown command: %s [...] %s. Please use \x02help commands\x02 to get a list of available commands.", "account", cmd[2] );582 irc_rootmsg( irc, "Unknown command: %s [...] %s. Please use \x02help commands\x02 to get a list of available commands.", "account", cmd[2] ); 583 583 } 584 584 } … … 597 597 598 598 if( strchr( irc->umode, 'b' ) ) 599 irc_ usermsg( irc, "Channel list:" );599 irc_rootmsg( irc, "Channel list:" ); 600 600 601 601 for( l = irc->channels; l; l = l->next ) … … 603 603 irc_channel_t *ic = l->data; 604 604 605 irc_ usermsg( irc, "%2d. %s, %s channel%s", i, ic->name,605 irc_rootmsg( irc, "%2d. %s, %s channel%s", i, ic->name, 606 606 set_getstr( &ic->set, "type" ), 607 607 ic->flags & IRC_CHANNEL_JOINED ? " (joined)" : "" ); … … 609 609 i ++; 610 610 } 611 irc_ usermsg( irc, "End of channel list" );611 irc_rootmsg( irc, "End of channel list" ); 612 612 613 613 return; … … 623 623 cmd_set_real( irc, cmd + 1, &ic->set, NULL ); 624 624 else 625 irc_ usermsg( irc, "Could not find channel `%s'", cmd[1] );625 irc_rootmsg( irc, "Could not find channel `%s'", cmd[1] ); 626 626 627 627 return; … … 640 640 ic != ic->irc->default_channel ) 641 641 { 642 irc_ usermsg( irc, "Channel %s deleted.", ic->name );642 irc_rootmsg( irc, "Channel %s deleted.", ic->name ); 643 643 irc_channel_free( ic ); 644 644 } 645 645 else 646 irc_ usermsg( irc, "Couldn't remove channel (main channel %s or "646 irc_rootmsg( irc, "Couldn't remove channel (main channel %s or " 647 647 "channels you're still in cannot be deleted).", 648 648 irc->default_channel->name ); … … 650 650 else 651 651 { 652 irc_ usermsg( irc, "Unknown command: %s [...] %s. Please use \x02help commands\x02 to get a list of available commands.", "channel", cmd[1] );652 irc_rootmsg( irc, "Unknown command: %s [...] %s. Please use \x02help commands\x02 to get a list of available commands.", "channel", cmd[1] ); 653 653 } 654 654 } … … 668 668 if( !( a = account_get( irc->b, cmd[1] ) ) ) 669 669 { 670 irc_ usermsg( irc, "Invalid account" );670 irc_rootmsg( irc, "Invalid account" ); 671 671 return; 672 672 } 673 673 else if( !( a->ic && ( a->ic->flags & OPT_LOGGED_IN ) ) ) 674 674 { 675 irc_ usermsg( irc, "That account is not on-line" );675 irc_rootmsg( irc, "That account is not on-line" ); 676 676 return; 677 677 } … … 681 681 if( !nick_ok( cmd[3] ) ) 682 682 { 683 irc_ usermsg( irc, "The requested nick `%s' is invalid", cmd[3] );683 irc_rootmsg( irc, "The requested nick `%s' is invalid", cmd[3] ); 684 684 return; 685 685 } 686 686 else if( irc_user_by_name( irc, cmd[3] ) ) 687 687 { 688 irc_ usermsg( irc, "The requested nick `%s' already exists", cmd[3] );688 irc_rootmsg( irc, "The requested nick `%s' already exists", cmd[3] ); 689 689 return; 690 690 } … … 704 704 strcmp( s, "group" ) == 0 && 705 705 ( group = set_getstr( &ic->set, "group" ) ) ) 706 irc_ usermsg( irc, "Adding `%s' to contact list (group %s)",706 irc_rootmsg( irc, "Adding `%s' to contact list (group %s)", 707 707 cmd[2], group ); 708 708 else 709 irc_ usermsg( irc, "Adding `%s' to contact list", cmd[2] );709 irc_rootmsg( irc, "Adding `%s' to contact list", cmd[2] ); 710 710 711 711 a->prpl->add_buddy( a->ic, cmd[2], group ); … … 720 720 if( ( bu = bee_user_new( irc->b, a->ic, cmd[2], BEE_USER_LOCAL ) ) && 721 721 ( iu = bu->ui_data ) ) 722 irc_ usermsg( irc, "Temporarily assigned nickname `%s' "722 irc_rootmsg( irc, "Temporarily assigned nickname `%s' " 723 723 "to contact `%s'", iu->nick, cmd[2] ); 724 724 } … … 734 734 if( !( iu = irc_user_by_name( irc, cmd[1] ) ) || !( bu = iu->bu ) ) 735 735 { 736 irc_ usermsg( irc, "Buddy `%s' not found", cmd[1] );736 irc_rootmsg( irc, "Buddy `%s' not found", cmd[1] ); 737 737 return; 738 738 } … … 744 744 bee_user_free( irc->b, bu ); 745 745 746 irc_ usermsg( irc, "Buddy `%s' (nick %s) removed from contact list", s, cmd[1] );746 irc_rootmsg( irc, "Buddy `%s' (nick %s) removed from contact list", s, cmd[1] ); 747 747 g_free( s ); 748 748 … … 760 760 if( !iu || !iu->bu ) 761 761 { 762 irc_ usermsg( irc, "Nick `%s' does not exist", cmd[1] );762 irc_rootmsg( irc, "Nick `%s' does not exist", cmd[1] ); 763 763 return; 764 764 } … … 768 768 else if( !( a = account_get( irc->b, cmd[1] ) ) ) 769 769 { 770 irc_ usermsg( irc, "Invalid account" );770 irc_rootmsg( irc, "Invalid account" ); 771 771 return; 772 772 } 773 773 else if( !( ( ic = a->ic ) && ( a->ic->flags & OPT_LOGGED_IN ) ) ) 774 774 { 775 irc_ usermsg( irc, "That account is not on-line" );775 irc_rootmsg( irc, "That account is not on-line" ); 776 776 return; 777 777 } … … 779 779 if( !ic->acc->prpl->get_info ) 780 780 { 781 irc_ usermsg( irc, "Command `%s' not supported by this protocol", cmd[0] );781 irc_rootmsg( irc, "Command `%s' not supported by this protocol", cmd[0] ); 782 782 } 783 783 else … … 796 796 if( iu == NULL ) 797 797 { 798 irc_ usermsg( irc, "Nick `%s' does not exist", cmd[1] );798 irc_rootmsg( irc, "Nick `%s' does not exist", cmd[1] ); 799 799 } 800 800 else if( del ) … … 802 802 if( iu->bu ) 803 803 bee_irc_user_nick_reset( iu ); 804 irc_ usermsg( irc, "Nickname reset to `%s'", iu->nick );804 irc_rootmsg( irc, "Nickname reset to `%s'", iu->nick ); 805 805 } 806 806 else if( iu == irc->user ) 807 807 { 808 irc_ usermsg( irc, "Use /nick to change your own nickname" );808 irc_rootmsg( irc, "Use /nick to change your own nickname" ); 809 809 } 810 810 else if( !nick_ok( cmd[2] ) ) 811 811 { 812 irc_ usermsg( irc, "Nick `%s' is invalid", cmd[2] );812 irc_rootmsg( irc, "Nick `%s' is invalid", cmd[2] ); 813 813 } 814 814 else if( ( old = irc_user_by_name( irc, cmd[2] ) ) && old != iu ) 815 815 { 816 irc_ usermsg( irc, "Nick `%s' already exists", cmd[2] );816 irc_rootmsg( irc, "Nick `%s' already exists", cmd[2] ); 817 817 } 818 818 else … … 820 820 if( !irc_user_set_nick( iu, cmd[2] ) ) 821 821 { 822 irc_ usermsg( irc, "Error while changing nick" );822 irc_rootmsg( irc, "Error while changing nick" ); 823 823 return; 824 824 } … … 836 836 } 837 837 838 irc_ usermsg( irc, "Nick successfully changed" );838 irc_rootmsg( irc, "Nick successfully changed" ); 839 839 } 840 840 } … … 869 869 format = "%-32.32s %-16.16s"; 870 870 871 irc_ usermsg( irc, format, "Handle", "Nickname" );871 irc_rootmsg( irc, format, "Handle", "Nickname" ); 872 872 for( l = a->ic->deny; l; l = l->next ) 873 873 { 874 874 bee_user_t *bu = bee_user_by_handle( irc->b, a->ic, l->data ); 875 875 irc_user_t *iu = bu ? bu->ui_data : NULL; 876 irc_ usermsg( irc, format, l->data, iu ? iu->nick : "(none)" );877 } 878 irc_ usermsg( irc, "End of list." );876 irc_rootmsg( irc, format, l->data, iu ? iu->nick : "(none)" ); 877 } 878 irc_rootmsg( irc, "End of list." ); 879 879 880 880 return; … … 885 885 if( !iu || !iu->bu ) 886 886 { 887 irc_ usermsg( irc, "Nick `%s' does not exist", cmd[1] );887 irc_rootmsg( irc, "Nick `%s' does not exist", cmd[1] ); 888 888 return; 889 889 } … … 893 893 else if( !( a = account_get( irc->b, cmd[1] ) ) ) 894 894 { 895 irc_ usermsg( irc, "Invalid account" );895 irc_rootmsg( irc, "Invalid account" ); 896 896 return; 897 897 } 898 898 else if( !( ( ic = a->ic ) && ( a->ic->flags & OPT_LOGGED_IN ) ) ) 899 899 { 900 irc_ usermsg( irc, "That account is not on-line" );900 irc_rootmsg( irc, "That account is not on-line" ); 901 901 return; 902 902 } … … 904 904 if( !ic->acc->prpl->add_deny || !ic->acc->prpl->rem_permit ) 905 905 { 906 irc_ usermsg( irc, "Command `%s' not supported by this protocol", cmd[0] );906 irc_rootmsg( irc, "Command `%s' not supported by this protocol", cmd[0] ); 907 907 } 908 908 else … … 910 910 imc_rem_allow( ic, cmd[2] ); 911 911 imc_add_block( ic, cmd[2] ); 912 irc_ usermsg( irc, "Buddy `%s' moved from allow- to block-list", cmd[2] );912 irc_rootmsg( irc, "Buddy `%s' moved from allow- to block-list", cmd[2] ); 913 913 } 914 914 } … … 929 929 format = "%-32.32s %-16.16s"; 930 930 931 irc_ usermsg( irc, format, "Handle", "Nickname" );931 irc_rootmsg( irc, format, "Handle", "Nickname" ); 932 932 for( l = a->ic->permit; l; l = l->next ) 933 933 { 934 934 bee_user_t *bu = bee_user_by_handle( irc->b, a->ic, l->data ); 935 935 irc_user_t *iu = bu ? bu->ui_data : NULL; 936 irc_ usermsg( irc, format, l->data, iu ? iu->nick : "(none)" );937 } 938 irc_ usermsg( irc, "End of list." );936 irc_rootmsg( irc, format, l->data, iu ? iu->nick : "(none)" ); 937 } 938 irc_rootmsg( irc, "End of list." ); 939 939 940 940 return; … … 945 945 if( !iu || !iu->bu ) 946 946 { 947 irc_ usermsg( irc, "Nick `%s' does not exist", cmd[1] );947 irc_rootmsg( irc, "Nick `%s' does not exist", cmd[1] ); 948 948 return; 949 949 } … … 953 953 else if( !( a = account_get( irc->b, cmd[1] ) ) ) 954 954 { 955 irc_ usermsg( irc, "Invalid account" );955 irc_rootmsg( irc, "Invalid account" ); 956 956 return; 957 957 } 958 958 else if( !( ( ic = a->ic ) && ( a->ic->flags & OPT_LOGGED_IN ) ) ) 959 959 { 960 irc_ usermsg( irc, "That account is not on-line" );960 irc_rootmsg( irc, "That account is not on-line" ); 961 961 return; 962 962 } … … 964 964 if( !ic->acc->prpl->rem_deny || !ic->acc->prpl->add_permit ) 965 965 { 966 irc_ usermsg( irc, "Command `%s' not supported by this protocol", cmd[0] );966 irc_rootmsg( irc, "Command `%s' not supported by this protocol", cmd[0] ); 967 967 } 968 968 else … … 971 971 imc_add_allow( ic, cmd[2] ); 972 972 973 irc_ usermsg( irc, "Buddy `%s' moved from block- to allow-list", cmd[2] );973 irc_rootmsg( irc, "Buddy `%s' moved from block- to allow-list", cmd[2] ); 974 974 } 975 975 } … … 998 998 if( ( ++times >= 3 ) ) 999 999 { 1000 irc_ usermsg( irc, "%s", msg[rand()%(sizeof(msg)/sizeof(char*))] );1000 irc_rootmsg( irc, "%s", msg[rand()%(sizeof(msg)/sizeof(char*))] ); 1001 1001 last_irc = NULL; 1002 1002 times = 0; … … 1011 1011 } 1012 1012 1013 irc_ usermsg( irc, "Did I ask you something?" );1013 irc_rootmsg( irc, "Did I ask you something?" ); 1014 1014 return; 1015 1015 } … … 1021 1021 if( sscanf( cmd[1], "%d", &numq ) != 1 ) 1022 1022 { 1023 irc_ usermsg( irc, "Invalid query number" );1023 irc_rootmsg( irc, "Invalid query number" ); 1024 1024 return; 1025 1025 } … … 1031 1031 if( !q ) 1032 1032 { 1033 irc_ usermsg( irc, "Uhm, I never asked you something like that..." );1033 irc_rootmsg( irc, "Uhm, I never asked you something like that..." ); 1034 1034 return; 1035 1035 } … … 1071 1071 format = "%-16.16s %-40.40s %s"; 1072 1072 1073 irc_ usermsg( irc, format, "Nick", "Handle/Account", "Status" );1073 irc_rootmsg( irc, format, "Nick", "Handle/Account", "Status" ); 1074 1074 1075 1075 if( irc->root->last_channel && … … 1094 1094 1095 1095 g_snprintf( s, sizeof( s ) - 1, "%s %s(%s)", bu->handle, bu->ic->acc->prpl->name, bu->ic->acc->user ); 1096 irc_ usermsg( irc, format, iu->nick, s, st );1096 irc_rootmsg( irc, format, iu->nick, s, st ); 1097 1097 } 1098 1098 … … 1112 1112 { 1113 1113 g_snprintf( s, sizeof( s ) - 1, "%s %s(%s)", bu->handle, bu->ic->acc->prpl->name, bu->ic->acc->user ); 1114 irc_ usermsg( irc, format, iu->nick, s, irc_user_get_away( iu ) );1114 irc_rootmsg( irc, format, iu->nick, s, irc_user_get_away( iu ) ); 1115 1115 } 1116 1116 n_away ++; … … 1129 1129 { 1130 1130 g_snprintf( s, sizeof( s ) - 1, "%s %s(%s)", bu->handle, bu->ic->acc->prpl->name, bu->ic->acc->user ); 1131 irc_ usermsg( irc, format, iu->nick, s, "Offline" );1131 irc_rootmsg( irc, format, iu->nick, s, "Offline" ); 1132 1132 } 1133 1133 n_offline ++; 1134 1134 } 1135 1135 1136 irc_ usermsg( irc, "%d buddies (%d available, %d away, %d offline)", n_online + n_away + n_offline, n_online, n_away, n_offline );1136 irc_rootmsg( irc, "%d buddies (%d available, %d away, %d offline)", n_online + n_away + n_offline, n_online, n_away, n_offline ); 1137 1137 } 1138 1138 … … 1144 1144 if( !q ) 1145 1145 { 1146 irc_ usermsg( irc, "There are no pending questions." );1147 return; 1148 } 1149 1150 irc_ usermsg( irc, "Pending queries:" );1146 irc_rootmsg( irc, "There are no pending questions." ); 1147 return; 1148 } 1149 1150 irc_rootmsg( irc, "Pending queries:" ); 1151 1151 1152 1152 for( num = 0; q; q = q->next, num ++ ) 1153 1153 if( q->ic ) /* Not necessary yet, but it might come later */ 1154 irc_ usermsg( irc, "%d, %s(%s): %s", num, q->ic->acc->prpl->name, q->ic->acc->user, q->question );1155 else 1156 irc_ usermsg( irc, "%d, BitlBee: %s", num, q->question );1154 irc_rootmsg( irc, "%d, %s(%s): %s", num, q->ic->acc->prpl->name, q->ic->acc->user, q->question ); 1155 else 1156 irc_rootmsg( irc, "%d, BitlBee: %s", num, q->question ); 1157 1157 } 1158 1158 … … 1170 1170 if( !( acc = account_get( irc->b, cmd[2] ) ) ) 1171 1171 { 1172 irc_ usermsg( irc, "Invalid account" );1172 irc_rootmsg( irc, "Invalid account" ); 1173 1173 return; 1174 1174 } 1175 1175 else if( !acc->prpl->chat_join ) 1176 1176 { 1177 irc_ usermsg( irc, "Named chatrooms not supported on that account." );1177 irc_rootmsg( irc, "Named chatrooms not supported on that account." ); 1178 1178 return; 1179 1179 } … … 1205 1205 set_setstr( &ic->set, "room", cmd[3] ) ) 1206 1206 { 1207 irc_ usermsg( irc, "Chatroom successfully added." );1207 irc_rootmsg( irc, "Chatroom successfully added." ); 1208 1208 } 1209 1209 else … … 1212 1212 irc_channel_free( ic ); 1213 1213 1214 irc_ usermsg( irc, "Could not add chatroom." );1214 irc_rootmsg( irc, "Could not add chatroom." ); 1215 1215 } 1216 1216 g_free( channel ); … … 1227 1227 if( !iu->bu->ic->acc->prpl->chat_with( iu->bu->ic, iu->bu->handle ) ) 1228 1228 { 1229 irc_ usermsg( irc, "(Possible) failure while trying to open "1229 irc_rootmsg( irc, "(Possible) failure while trying to open " 1230 1230 "a groupchat with %s.", iu->nick ); 1231 1231 } … … 1233 1233 else 1234 1234 { 1235 irc_ usermsg( irc, "Can't open a groupchat with %s.", cmd[2] );1235 irc_rootmsg( irc, "Can't open a groupchat with %s.", cmd[2] ); 1236 1236 } 1237 1237 } … … 1240 1240 g_strcasecmp( cmd[1], "del" ) == 0 ) 1241 1241 { 1242 irc_ usermsg( irc, "Warning: The \002chat\002 command was mostly replaced with the \002channel\002 command." );1242 irc_rootmsg( irc, "Warning: The \002chat\002 command was mostly replaced with the \002channel\002 command." ); 1243 1243 cmd_channel( irc, cmd ); 1244 1244 } 1245 1245 else 1246 1246 { 1247 irc_ usermsg( irc, "Unknown command: %s %s. Please use \x02help commands\x02 to get a list of available commands.", "chat", cmd[1] );1247 irc_rootmsg( irc, "Unknown command: %s %s. Please use \x02help commands\x02 to get a list of available commands.", "chat", cmd[1] ); 1248 1248 } 1249 1249 } … … 1260 1260 1261 1261 if( strchr( irc->umode, 'b' ) ) 1262 irc_ usermsg( irc, "Group list:" );1262 irc_rootmsg( irc, "Group list:" ); 1263 1263 1264 1264 for( l = irc->b->groups; l; l = l->next ) 1265 1265 { 1266 1266 bee_group_t *bg = l->data; 1267 irc_ usermsg( irc, "%d. %s", n ++, bg->name );1268 } 1269 irc_ usermsg( irc, "End of group list" );1270 } 1271 else 1272 { 1273 irc_ usermsg( irc, "Unknown command: %s %s. Please use \x02help commands\x02 to get a list of available commands.", "group", cmd[1] );1267 irc_rootmsg( irc, "%d. %s", n ++, bg->name ); 1268 } 1269 irc_rootmsg( irc, "End of group list" ); 1270 } 1271 else 1272 { 1273 irc_rootmsg( irc, "Unknown command: %s %s. Please use \x02help commands\x02 to get a list of available commands.", "group", cmd[1] ); 1274 1274 } 1275 1275 } … … 1284 1284 if( !files ) 1285 1285 { 1286 irc_ usermsg( irc, "No pending transfers" );1286 irc_rootmsg( irc, "No pending transfers" ); 1287 1287 return; 1288 1288 } … … 1305 1305 case LIST: 1306 1306 if ( file->status == FT_STATUS_LISTENING ) 1307 irc_ usermsg( irc,1307 irc_rootmsg( irc, 1308 1308 "Pending file(id %d): %s (Listening...)", file->local_id, file->file_name); 1309 1309 else … … 1314 1314 kb_per_s = file->bytes_transferred / 1024 / diff; 1315 1315 1316 irc_ usermsg( irc,1316 irc_rootmsg( irc, 1317 1317 "Pending file(id %d): %s (%10zd/%zd kb, %d kb/s)", file->local_id, file->file_name, 1318 1318 file->bytes_transferred/1024, file->file_size/1024, kb_per_s); … … 1322 1322 if( file->status == FT_STATUS_LISTENING ) 1323 1323 { 1324 irc_ usermsg( irc, "Rejecting file transfer for %s", file->file_name );1324 irc_rootmsg( irc, "Rejecting file transfer for %s", file->file_name ); 1325 1325 imcb_file_canceled( file->ic, file, "Denied by user" ); 1326 1326 } … … 1329 1329 if( file->local_id == fid ) 1330 1330 { 1331 irc_ usermsg( irc, "Canceling file transfer for %s", file->file_name );1331 irc_rootmsg( irc, "Canceling file transfer for %s", file->file_name ); 1332 1332 imcb_file_canceled( file->ic, file, "Canceled by user" ); 1333 1333 } … … 1339 1339 static void cmd_nick( irc_t *irc, char **cmd ) 1340 1340 { 1341 irc_ usermsg( irc, "This command is deprecated. Try: account %s set display_name", cmd[1] );1341 irc_rootmsg( irc, "This command is deprecated. Try: account %s set display_name", cmd[1] ); 1342 1342 } 1343 1343 … … 1354 1354 1355 1355 if( msg ) 1356 irc_ usermsg( irc, "%s: This seems to be your first time using this "1356 irc_rootmsg( irc, "%s: This seems to be your first time using this " 1357 1357 "this version of BitlBee. Here's a list of new " 1358 1358 "features you may like to know about:\n\n%s\n", -
storage_xml.c
r3231485 re67e513 269 269 { 270 270 xd->unknown_tag ++; 271 irc_ usermsg( irc, "Warning: Unknown XML tag found in configuration file (%s). "271 irc_rootmsg( irc, "Warning: Unknown XML tag found in configuration file (%s). " 272 272 "This may happen when downgrading BitlBee versions. " 273 273 "This tag will be skipped and the information will be lost " … … 397 397 { 398 398 if( gerr && irc ) 399 irc_ usermsg( irc, "Error from XML-parser: %s", gerr->message );399 irc_rootmsg( irc, "Error from XML-parser: %s", gerr->message ); 400 400 401 401 g_clear_error( &gerr ); … … 473 473 if( ( fd = mkstemp( path ) ) < 0 ) 474 474 { 475 irc_ usermsg( irc, "Error while opening configuration file." );475 irc_rootmsg( irc, "Error while opening configuration file." ); 476 476 return STORAGE_OTHER_ERROR; 477 477 } … … 570 570 if( rename( path, path2 ) != 0 ) 571 571 { 572 irc_ usermsg( irc, "Error while renaming temporary configuration file." );572 irc_rootmsg( irc, "Error while renaming temporary configuration file." ); 573 573 574 574 g_free( path2 ); … … 585 585 g_free( pass_buf ); 586 586 587 irc_ usermsg( irc, "Write error. Disk full?" );587 irc_rootmsg( irc, "Write error. Disk full?" ); 588 588 close( fd ); 589 589
Note: See TracChangeset
for help on using the changeset viewer.