static void put_iac_subopt_autologin(void) { int len = strlen(G.autologin) + 6; // (2 + 1 + 1 + strlen + 2) const char *user = "******"; if (G.iaclen + len > IACBUFSIZE) iac_flush(); put_iac(IAC); put_iac(SB); put_iac(TELOPT_NEW_ENVIRON); put_iac(TELQUAL_IS); put_iac(NEW_ENV_VAR); while (*user) put_iac(*user++); put_iac(NEW_ENV_VALUE); while (*G.autologin) put_iac(*G.autologin++); put_iac(IAC); put_iac(SE); }
static void put_iac2(byte wwdd, byte c) { if (G.iaclen + 3 > IACBUFSIZE) iac_flush(); put_iac(IAC); put_iac(wwdd); put_iac(c); }
static void put_iac_naws(byte c, int x, int y) { if (G.iaclen + 9 > IACBUFSIZE) iac_flush(); put_iac(IAC); put_iac(SB); put_iac(c); put_iac((x >> 8) & 0xff); put_iac(x & 0xff); put_iac((y >> 8) & 0xff); put_iac(y & 0xff); put_iac(IAC); put_iac(SE); }
static void put_iac_subopt(byte c, char *str) { int len = strlen(str) + 6; // ( 2 + 1 + 1 + strlen + 2 ) if (G.iaclen + len > IACBUFSIZE) iac_flush(); put_iac(IAC); put_iac(SB); put_iac(c); put_iac(0); while (*str) put_iac(*str++); put_iac(IAC); put_iac(SE); }
static void put_iac_naws(byte c, int x, int y) { if (G.iaclen + 9 > IACBUFSIZE) iac_flush(); put_iac(IAC); put_iac(SB); put_iac(c); /* "... & 0xff" implicitly done below */ put_iac(x >> 8); put_iac(x); put_iac(y >> 8); put_iac(y); put_iac(IAC); put_iac(SE); }