- if(add_id(fakesource_p, chptr, s, forward, banlist, mode_type))
+ mask = s;
+ if (extended) {
+ when = atol(strtok(NULL, " "));
+ who = strtok(NULL, " ");
+ if (who == NULL)
+ {
+ /* EBMASK params don't divide by 3, so we have an incomplete chunk */
+ sendto_realops_snomask(SNO_GENERAL, L_NETWIDE,
+ "Link %s dropped, invalid EBMASK chunk", source_p->name);
+ snprintf(squitreason, sizeof squitreason, "Invalid EBMASK chunk");
+ exit_client(client_p, client_p, client_p, squitreason);
+ return;
+ }
+
+ arglen = sprintf(degrade_ptr, "%s ", mask);
+ degrade_ptr += arglen;
+ }
+
+ if((banptr = add_id(fakesource_p, chptr, mask, forward, banlist, mode_type)) != NULL)