CONNECT: allow using 3-argument CONNECT with port == 0 locally (closes #119)

This commit is contained in:
William Pitcock 2016-01-12 05:54:04 -06:00
parent 15feac531c
commit abad2c5da6

View file

@ -110,20 +110,17 @@ mo_connect(struct Client *client_p, struct Client *source_p, int parc, const cha
* use the default form configuration structure. If missing * use the default form configuration structure. If missing
* from there, then use the precompiled default. * from there, then use the precompiled default.
*/ */
tmpport = port = server_p->port; tmpport = port = 0;
if(parc > 2 && !EmptyString(parv[2])) if(parc > 2 && !EmptyString(parv[2]))
port = atoi(parv[2]);
if(port == 0 && server_p->port)
port = server_p->port;
else if(port <= 0)
{ {
if((port = atoi(parv[2])) <= 0) sendto_one_notice(source_p, ":Connect: illegal port number");
{
sendto_one_notice(source_p, ":Connect: Illegal port number");
return 0;
}
}
else if(port <= 0 && (port = PORTNUM) <= 0)
{
sendto_one_notice(source_p, ":Connect: missing port number");
return 0; return 0;
} }
/* /*
* Notify all operators about remote connect requests * Notify all operators about remote connect requests
*/ */