diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2011-12-21 12:21:04 +0100 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2011-12-21 12:21:04 +0100 |
commit | ce199b726735374aca84b2111bb19ec103478ebc (patch) | |
tree | d3fa4dcf151398b064a8aef9d7bdde8cbf3f329b /set.c | |
parent | e14b47b826594772e4f3d0dbec1bf17153aa92b1 (diff) |
Make it easier to add OAuth-authenticated accounts without having to type
a bogus password.
Diffstat (limited to 'set.c')
-rw-r--r-- | set.c | 28 |
1 files changed, 7 insertions, 21 deletions
@@ -84,7 +84,7 @@ char *set_getstr( set_t **head, const char *key ) if( !s || ( !s->value && !s->def ) ) return NULL; - return s->value ? s->value : s->def; + return set_value( s ); } int set_getint( set_t **head, const char *key ) @@ -249,26 +249,12 @@ char *set_eval_to_char( set_t *set, char *value ) return s; } -/* -char *set_eval_ops( set_t *set, char *value ) +char *set_eval_oauth( set_t *set, char *value ) { - irc_t *irc = set->data; - - if( g_strcasecmp( value, "user" ) == 0 ) - irc_write( irc, ":%s!%s@%s MODE %s %s %s %s", irc->mynick, irc->mynick, irc->myhost, - irc->channel, "+o-o", irc->nick, irc->mynick ); - else if( g_strcasecmp( value, "root" ) == 0 ) - irc_write( irc, ":%s!%s@%s MODE %s %s %s %s", irc->mynick, irc->mynick, irc->myhost, - irc->channel, "-o+o", irc->nick, irc->mynick ); - else if( g_strcasecmp( value, "both" ) == 0 ) - irc_write( irc, ":%s!%s@%s MODE %s %s %s %s", irc->mynick, irc->mynick, irc->myhost, - irc->channel, "+oo", irc->nick, irc->mynick ); - else if( g_strcasecmp( value, "none" ) == 0 ) - irc_write( irc, ":%s!%s@%s MODE %s %s %s %s", irc->mynick, irc->mynick, irc->myhost, - irc->channel, "-oo", irc->nick, irc->mynick ); - else - return SET_INVALID; + account_t *acc = set->data; - return value; + if( bool2int( value ) && strcmp( acc->pass, PASSWORD_PENDING ) == 0 ) + *acc->pass = '\0'; + + return set_eval_bool( set, value ); } -*/ |