static XS (XS_XChat_plugin_pref_list) { char list[4096]; char value[512]; char *token; dSP; dMARK; dAX; if (!xchat_pluginpref_list (ph, list)) XSRETURN_EMPTY; PUSHMARK (SP); token = strtok (list, ","); while (token != NULL) { xchat_pluginpref_get_str (ph, token, value); XPUSHs (sv_2mortal (newSVpv (token, 0))); XPUSHs (sv_2mortal (newSVpv (value, 0))); token = strtok (NULL, ","); } PUTBACK; }
static void print_info () { char list[512]; char* token; if (xchat_pluginpref_list (ph, list)) { xchat_printf (ph, "%s\tSASL-enabled networks:", name); xchat_printf (ph, "%s\t----------------------", name); token = strtok (list, ","); while (token != NULL) { xchat_printf (ph, "%s\t%s", name, token); token = strtok (NULL, ","); } } else { xchat_printf (ph, "%s\tThere are no SASL-enabled networks currently", name); } }