+ if (parc < 6) {
+ warn_opers(L_CRIT, "provider: received too few params for new connection (6 expected, got %d)", parc);
+ exit(EX_PROVIDER_ERROR);
+ }
+
+ start_auth(parv[1], parv[2], parv[3], parv[4], parv[5], parc > 6 ? parv[6] : "0");
+}
+
+void
+handle_cancel_connection(int parc, char *parv[])
+{
+ struct auth_client *auth;
+ unsigned long long lcid;
+
+ if(parc < 2)
+ {
+ warn_opers(L_CRIT, "provider: received too few params for new connection (2 expected, got %d)", parc);
+ exit(EX_PROVIDER_ERROR);
+ }
+
+ lcid = strtoull(parv[1], NULL, 16);
+ if(lcid == 0 || lcid > UINT32_MAX)