aboutsummaryrefslogtreecommitdiffstats
path: root/otr.c
diff options
context:
space:
mode:
authorSven Moritz Hallberg <sm@khjk.org>2008-02-11 15:36:19 +0100
committerSven Moritz Hallberg <sm@khjk.org>2008-02-11 15:36:19 +0100
commit8c2b1c32386b9cbb06e1e6f03b3f2926e7761461 (patch)
tree53db5879ab38242485d98228fc2b12f85ecd5ed1 /otr.c
parent2a2db6f4876e16309ec3238b4c118db778778781 (diff)
honor simulate_netsplit for encrypted/trusted mode changes
Diffstat (limited to 'otr.c')
-rw-r--r--otr.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/otr.c b/otr.c
index 66cdb645..eeef55bb 100644
--- a/otr.c
+++ b/otr.c
@@ -957,6 +957,7 @@ int otr_update_modeflags(irc_t *irc, user_t *u)
char flags[7];
int nflags;
char *p = flags;
+ char *from;
int i;
if(!strcmp(vb, "encrypted")) {
@@ -996,8 +997,12 @@ int otr_update_modeflags(irc_t *irc, user_t *u)
strcat(p, " ");
strcat(p, u->nick);
}
- irc_write( irc, ":%s!%s@%s MODE %s %s%s", irc->mynick, irc->mynick, irc->myhost,
- irc->channel, flags, p );
+ if(set_getbool(&irc->set, "simulate_netsplit"))
+ from = g_strdup(irc->myhost);
+ else
+ from = g_strdup_printf("%s!%s@%s", irc->mynick, irc->mynick, irc->myhost);
+ irc_write(irc, ":%s MODE %s %s%s", from, irc->channel, flags, p);
+ g_free(from);
g_free(p);
return 1;