diff options
author | Sven Moritz Hallberg <sm@khjk.org> | 2008-02-09 18:58:13 +0100 |
---|---|---|
committer | Sven Moritz Hallberg <sm@khjk.org> | 2008-02-09 18:58:13 +0100 |
commit | 5a71d9c5b14aa749b532666b71b25ce2afcdc5bb (patch) | |
tree | 5e6ec25cb526a9940ba6ba4c63dc590a8991679f /protocols | |
parent | a13855a57daae6eba05c9600b69f640c2949e944 (diff) |
- add support for setting ops/voice according to OTR msgstate
- add 'otr trust' user command
- support non-otr messages during keygen
- run otr messages through strip_html
- interpret <b> and <i> tags in html messages
- record max message size in prpl
- add 'encrypted' flag to user_t
- cosmetics
Diffstat (limited to 'protocols')
-rw-r--r-- | protocols/jabber/jabber.c | 1 | ||||
-rw-r--r-- | protocols/msn/msn.c | 1 | ||||
-rw-r--r-- | protocols/nogaim.c | 17 | ||||
-rw-r--r-- | protocols/nogaim.h | 4 | ||||
-rw-r--r-- | protocols/oscar/oscar.c | 1 | ||||
-rw-r--r-- | protocols/yahoo/yahoo.c | 1 |
6 files changed, 19 insertions, 6 deletions
diff --git a/protocols/jabber/jabber.c b/protocols/jabber/jabber.c index 243ed7fd..dac18bae 100644 --- a/protocols/jabber/jabber.c +++ b/protocols/jabber/jabber.c @@ -510,6 +510,7 @@ void jabber_initmodule() struct prpl *ret = g_new0( struct prpl, 1 ); ret->name = "jabber"; + ret->mms = 0; /* no limit */ ret->login = jabber_login; ret->init = jabber_init; ret->logout = jabber_logout; diff --git a/protocols/msn/msn.c b/protocols/msn/msn.c index a2e8519a..335ae894 100644 --- a/protocols/msn/msn.c +++ b/protocols/msn/msn.c @@ -371,6 +371,7 @@ void msn_initmodule() struct prpl *ret = g_new0(struct prpl, 1); ret->name = "msn"; + ret->mms = 1409; /* this guess taken from libotr UPGRADING file */ ret->login = msn_login; ret->init = msn_init; ret->logout = msn_logout; diff --git a/protocols/nogaim.c b/protocols/nogaim.c index d8bfad14..138e2ce1 100644 --- a/protocols/nogaim.c +++ b/protocols/nogaim.c @@ -602,10 +602,9 @@ void imcb_buddy_status( struct im_connection *ic, const char *handle, int flags, /* else waste_any_state_information_for_now(); */ /* LISPy... */ - if( ( set_getbool( &ic->irc->set, "away_devoice" ) ) && /* Don't do a thing when user doesn't want it */ - ( u->online ) && /* Don't touch offline people */ - ( ( ( u->online != oo ) && !u->away ) || /* Voice joining people */ - ( ( u->online == oo ) && ( oa == !u->away ) ) ) ) /* (De)voice people changing state */ + if( ( u->online ) && /* Don't touch offline people */ + ( ( ( u->online != oo ) && !u->away ) || /* Do joining people */ + ( ( u->online == oo ) && ( oa == !u->away ) ) ) ) /* Do people changing state */ { char *from; @@ -618,8 +617,14 @@ void imcb_buddy_status( struct im_connection *ic, const char *handle, int flags, from = g_strdup_printf( "%s!%s@%s", ic->irc->mynick, ic->irc->mynick, ic->irc->myhost ); } - irc_write( ic->irc, ":%s MODE %s %cv %s", from, ic->irc->channel, - u->away?'-':'+', u->nick ); + if(!strcmp(set_getstr(&ic->irc->set, "voice_buddies"), "notaway")) { + irc_write( ic->irc, ":%s MODE %s %cv %s", from, ic->irc->channel, + u->away?'-':'+', u->nick ); + } + if(!strcmp(set_getstr(&ic->irc->set, "op_buddies"), "notaway")) { + irc_write( ic->irc, ":%s MODE %s %co %s", from, ic->irc->channel, + u->away?'-':'+', u->nick ); + } g_free( from ); } } diff --git a/protocols/nogaim.h b/protocols/nogaim.h index 7d391edd..3eb640e2 100644 --- a/protocols/nogaim.h +++ b/protocols/nogaim.h @@ -135,6 +135,10 @@ struct prpl { /* You should set this to the name of your protocol. * - The user sees this name ie. when imcb_log() is used. */ const char *name; + /* Maximum Message Size of this protocol. + * - Introduced for OTR, in order to fragment large protocol messages. + * - 0 means "unlimited". */ + unsigned int mms; /* Added this one to be able to add per-account settings, don't think * it should be used for anything else. You are supposed to use the diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c index 30ad4b68..9167f6a3 100644 --- a/protocols/oscar/oscar.c +++ b/protocols/oscar/oscar.c @@ -2602,6 +2602,7 @@ void oscar_initmodule() { struct prpl *ret = g_new0(struct prpl, 1); ret->name = "oscar"; + ret->mms = 2343; /* this guess taken from libotr UPGRADING file */ ret->away_states = oscar_away_states; ret->init = oscar_init; ret->login = oscar_login; diff --git a/protocols/yahoo/yahoo.c b/protocols/yahoo/yahoo.c index 9f9ffcf7..52747bb4 100644 --- a/protocols/yahoo/yahoo.c +++ b/protocols/yahoo/yahoo.c @@ -353,6 +353,7 @@ void byahoo_initmodule( ) { struct prpl *ret = g_new0(struct prpl, 1); ret->name = "yahoo"; + ret->mms = 832; /* this guess taken from libotr UPGRADING file */ ret->init = byahoo_init; ret->login = byahoo_login; |