void negotiation_failed(OPM_REMOTE_T *, int);
void timeout(OPM_REMOTE_T *, int);
void end(OPM_REMOTE_T *, int);
+void handle_error(OPM_REMOTE_T *, int);
int main(int argc, char **argv)
{
int fdlimit = 1024;
int scan_port = 6667;
+ int max_read = 4096;
+ int scantimeout = 30;
+
OPM_T *scanner;
OPM_REMOTE_T *remote;
remote->fun_negfail = &negotiation_failed;
remote->fun_timeout = &timeout;
remote->fun_end = &end;
+ remote->fun_error = &handle_error;
opm_config(scanner, OPM_CONFIG_FD_LIMIT, &fdlimit);
opm_config(scanner, OPM_CONFIG_SCAN_IP, "203.56.139.100");
opm_config(scanner, OPM_CONFIG_SCAN_PORT, &scan_port);
opm_config(scanner, OPM_CONFIG_TARGET_STRING, "*** Looking up your hostname...");
+ opm_config(scanner, OPM_CONFIG_TIMEOUT, &scantimeout);
+ opm_config(scanner, OPM_CONFIG_MAX_READ, &max_read);
opm_addtype(scanner, OPM_TYPE_HTTP, 8080);
opm_addtype(scanner, OPM_TYPE_HTTP, 80);
printf("Scan on %s has ended\n", remote->ip);
opm_remote_free(remote);
}
+
+void handle_error(OPM_REMOTE_T *remote, int err)
+{
+ switch(err)
+ {
+ case OPM_ERR_MAX_READ:
+ printf("Reached MAX READ on %s:%d\n", remote->ip, remote->port);
+ break;
+ default:
+ printf("Unknown error on %s:%d, err = %d\n", remote->ip, remote->port, err);
+ }
+}