irssi/src/core/server-setup-rec.h
Kenny Root 7c37b2a4d6 Add support for SASL mechanisms handled by scripts
This implements the suggested API from #323 with a caveat: currently the
SASL mechanisms are tied to IRC and needs a bit of extra work to make
them generic enough to move to the regular src/core instead of solely in
src/irc/core.

This greatly simplifies scripts for each mechanism since this handles
the splitting and reassembly of the 400 byte fragments going to and
coming from the server.

The ECDSA-NIST256P-CHALLENGE mechanism has been reimplemented using this
new API and found to work.
2016-06-30 08:31:07 -07:00

34 lines
917 B
C

int type; /* module_get_uniq_id("SERVER SETUP", 0) */
int chat_type; /* chat_protocol_lookup(xx) */
char *chatnet;
unsigned short family; /* 0 = default, AF_INET or AF_INET6 */
char *address;
int port;
char *password;
char *sasl_mechanism;
char *sasl_password;
char *ssl_cert;
char *ssl_pkey;
char *ssl_pass;
char *ssl_cafile;
char *ssl_capath;
char *ssl_ciphers;
char *own_host; /* address to use when connecting this server */
IPADDR *own_ip4, *own_ip6; /* resolved own_address if not NULL */
time_t last_connect; /* to avoid reconnecting too fast.. */
unsigned int autoconnect:1;
unsigned int no_proxy:1;
unsigned int last_failed:1; /* if last connection attempt failed */
unsigned int banned:1; /* if we're banned from this server */
unsigned int dns_error:1; /* DNS said the host doesn't exist */
unsigned int use_ssl:1; /* this connection uses SSL */
unsigned int ssl_verify:1;
GHashTable *module_data;