Lines Matching refs:cldata

35 #define SOCKSPORT (cldata[cl].instance->port)
81 struct socks_private *mydata = cldata[cl].instance->data; in socks_open_proxy()
82 char *reason = cldata[cl].instance->reason; in socks_open_proxy()
91 cldata[cl].state |= A_DENY; in socks_open_proxy()
92 sendto_ircd("k %d %s %u :%s", cl, cldata[cl].itsip, in socks_open_proxy()
93 cldata[cl].itsport, reason); in socks_open_proxy()
99 strver, cldata[cl].host, cldata[cl].itsip); in socks_open_proxy()
110 struct socks_private *mydata = cldata[cl].instance->data; in socks_add_cache()
140 strcpy(mydata->cache->ip, cldata[cl].itsip); in socks_add_cache()
155 struct socks_private *mydata = cldata[cl].instance->data; in socks_check_cache()
166 cl, cldata[cl].itsip)); in socks_check_cache()
183 if (!strcasecmp(pl->ip, cldata[cl].itsip)) in socks_check_cache()
218 struct socks_private *mydata = cldata[cl].instance->data; in socks_write()
222 if (sscanf(cldata[cl].ourip, "%u.%u.%u.%u", &a,&b,&c,&d) != 4) in socks_write()
224 if (inetpton(AF_INET6, cldata[cl].ourip, (void *) addr.s6_addr) != 1) in socks_write()
234 "(\"%s\") failed", strver, cl, cldata[cl].ourip); in socks_write()
235 close(cldata[cl].wfd); in socks_write()
236 cldata[cl].wfd = 0; in socks_write()
244 if (cldata[cl].mod_status == ST_V4 && !IN6_IS_ADDR_V4MAPPED(&addr)) in socks_write()
251 close(cldata[cl].wfd); in socks_write()
252 cldata[cl].wfd = 0; in socks_write()
257 cldata[cl].mod_status = ST_V5; in socks_write()
261 if (cldata[cl].mod_status == ST_V4) in socks_write()
264 query[2] = ((cldata[cl].ourport & 0xff00) >> 8); in socks_write()
265 query[3] = (cldata[cl].ourport & 0x00ff); in socks_write()
284 if (cldata[cl].mod_status == ST_V5b) in socks_write()
290 query[8] = ((cldata[cl].ourport & 0xff00) >>8); in socks_write()
291 query[9] = (cldata[cl].ourport & 0x00ff); in socks_write()
299 query[8] = ((cldata[cl].ourport & 0xff00) >>8); in socks_write()
300 query[9] = (cldata[cl].ourport & 0x00ff); in socks_write()
307 query[20] = ((cldata[cl].ourport & 0xff00) >>8); in socks_write()
308 query[21] = (cldata[cl].ourport & 0x00ff); in socks_write()
315 strver, cl, cldata[cl].ourip, SOCKSPORT)); in socks_write()
316 if (write(cldata[cl].wfd, query, query_len) != query_len) in socks_write()
323 close(cldata[cl].wfd); in socks_write()
324 cldata[cl].rfd = cldata[cl].wfd = 0; in socks_write()
327 cldata[cl].rfd = cldata[cl].wfd; in socks_write()
328 cldata[cl].wfd = 0; in socks_write()
334 struct socks_private *mydata = cldata[cl].instance->data; in socks_read()
338 if (cldata[cl].buflen < 2) in socks_read()
345 cldata[cl].inbuffer[0], cldata[cl].inbuffer[1])); in socks_read()
347 if (cldata[cl].mod_status == ST_V4) in socks_read()
349 if (cldata[cl].inbuffer[0] == 0 in socks_read()
356 || cldata[cl].inbuffer[0] == 4 in socks_read()
360 if (cldata[cl].inbuffer[1] < 90 || in socks_read()
361 cldata[cl].inbuffer[1] > 93) in socks_read()
367 if (cldata[cl].inbuffer[1] == 90) in socks_read()
372 cldata[cl].inbuffer[1] != 91) in socks_read()
385 if (cldata[cl].inbuffer[0] == 5) in socks_read()
387 if (cldata[cl].inbuffer[1] == 0) in socks_read()
393 if (cldata[cl].mod_status == ST_V5) in socks_read()
395 if ((u_char)cldata[cl].inbuffer[1] == 4 || in socks_read()
396 ((u_char)cldata[cl].inbuffer[1] > 9 && in socks_read()
397 (u_char)cldata[cl].inbuffer[1] != 255)) in socks_read()
404 if ((u_char) cldata[cl].inbuffer[1] > 8) in socks_read()
409 cldata[cl].inbuffer[1] != 2) in socks_read()
422 if (cldata[cl].mod_status == ST_V4) in socks_read()
429 cldata[cl].mod_status = ST_V5; in socks_read()
430 cldata[cl].buflen = 0; in socks_read()
431 close(cldata[cl].rfd); in socks_read()
432 cldata[cl].rfd = 0; in socks_read()
436 else if (cldata[cl].mod_status == ST_V5) in socks_read()
443 cldata[cl].mod_status = ST_V5b; in socks_read()
444 cldata[cl].buflen = 0; in socks_read()
445 cldata[cl].wfd = cldata[cl].rfd; in socks_read()
446 cldata[cl].rfd = 0; in socks_read()
460 cldata[cl].inbuffer[0], cldata[cl].inbuffer[1], in socks_read()
461 cldata[cl].host, cldata[cl].itsip); in socks_read()
463 strver, cldata[cl].inbuffer[0], in socks_read()
464 cldata[cl].inbuffer[1]); in socks_read()
476 cldata[cl].inbuffer[0], cldata[cl].inbuffer[1], in socks_read()
477 cldata[cl].host, cldata[cl].itsip); in socks_read()
480 strver, cldata[cl].inbuffer[0], in socks_read()
481 cldata[cl].inbuffer[1]); in socks_read()
497 close(cldata[cl].rfd); in socks_read()
498 cldata[cl].rfd = 0; in socks_read()
502 if (cldata[cl].mod_status != ST_V5b) in socks_read()
666 if (cldata[cl].state & A_DENY) in socks_start()
681 cldata[cl].itsip)); in socks_start()
682 fd= tcp_connect(cldata[cl].ourip, cldata[cl].itsip, SOCKSPORT, &error); in socks_start()
693 cldata[cl].wfd = fd; in socks_start()
710 struct socks_private *mydata = cldata[cl].instance->data; in socks_work()
712 if (cldata[cl].mod_status == 0) in socks_work()
716 cldata[cl].mod_status = ST_V5; in socks_work()
720 cldata[cl].mod_status = ST_V4; in socks_work()
724 if (cldata[cl].mod_status & ST_V5) in socks_work()
728 else if (cldata[cl].mod_status & ST_V5b) in socks_work()
735 cl, cldata[cl].rfd, cldata[cl].wfd, cldata[cl].buflen)); in socks_work()
737 if (cldata[cl].wfd > 0) in socks_work()
765 if (cldata[cl].rfd) in socks_clean()
767 close(cldata[cl].rfd); in socks_clean()
769 else if (cldata[cl].wfd) in socks_clean()
771 close(cldata[cl].wfd); in socks_clean()
773 cldata[cl].rfd = cldata[cl].wfd = 0; in socks_clean()