1
0
mirror of https://github.com/nmap/nmap.git synced 2026-01-06 14:39:03 +00:00

Style fixes.

indent -nut -i2 -kr -br -brs -brf -l0 -bad -npcs -nprs -ncs <files> and manual adjustments.
This commit is contained in:
henri
2012-09-21 09:05:59 +00:00
parent 520651a9ed
commit b4607a5071
2 changed files with 123 additions and 129 deletions

View File

@@ -78,6 +78,7 @@ int socket_errno();
extern char *optarg;
extern int optind;
struct telnet_state {
@@ -94,13 +95,13 @@ struct telnet_state {
int resolve(char *hostname, struct in_addr *ip) {
struct hostent *h;
if (!hostname || !*hostname) {
if (!hostname || !*hostname) {
fprintf(stderr, "NULL or zero-length hostname passed to resolve(). Quitting.\n");
exit(1);
}
if (inet_aton(hostname, ip))
return 1; /* damn, that was easy ;) */
return 1; /* damn, that was easy ;) */
if ((h = gethostbyname(hostname))) {
memcpy(ip, h->h_addr_list[0], sizeof(struct in_addr));
return 1;
@@ -109,83 +110,79 @@ int resolve(char *hostname, struct in_addr *ip) {
}
void telnet_event_handler(nsock_pool nsp, nsock_event nse, void *mydata) {
nsock_iod nsi = nse_iod(nse);
enum nse_status status = nse_status(nse);
enum nse_type type = nse_type(nse);
struct sockaddr_in peer;
struct telnet_state *ts;
int nbytes;
char *str;
int read_timeout = -1;
int write_timeout = 2000;
ts = (struct telnet_state *)mydata;
nsock_iod nsi = nse_iod(nse);
enum nse_status status = nse_status(nse);
enum nse_type type = nse_type(nse);
struct sockaddr_in peer;
struct telnet_state *ts;
int nbytes;
char *str;
int read_timeout = -1;
int write_timeout = 2000;
printf("telnet_event_handler: Received callback of type %s with status %s\n", nse_type2str(type), nse_status2str(status));
ts = (struct telnet_state *) mydata;
if (status == NSE_STATUS_SUCCESS) {
switch (type) {
case NSE_TYPE_CONNECT:
case NSE_TYPE_CONNECT_SSL:
nsi_getlastcommunicationinfo(nsi, NULL, NULL, NULL, (struct sockaddr *)&peer, sizeof peer);
printf("Successfully connected %sto %s:%hu -- start typing lines\n", (type == NSE_TYPE_CONNECT_SSL) ? "(SSL!) " : "", inet_ntoa(peer.sin_addr), peer.sin_port);
/* First of all, lets add STDIN to our list of watched filehandles */
if ((ts->stdin_nsi = nsi_new2(nsp, STDIN_FILENO, NULL)) == NULL) {
fprintf(stderr, "Failed to create stdin msi\n");
exit(1);
}
printf("telnet_event_handler: Received callback of type %s with status %s\n",
nse_type2str(type), nse_status2str(status));
if (status == NSE_STATUS_SUCCESS ) {
switch(type) {
case NSE_TYPE_CONNECT:
case NSE_TYPE_CONNECT_SSL:
nsi_getlastcommunicationinfo(nsi, NULL, NULL, NULL, (struct sockaddr*)&peer, sizeof peer);
printf("Successfully connected %sto %s:%hu -- start typing lines\n", (type == NSE_TYPE_CONNECT_SSL)? "(SSL!) " : "", inet_ntoa(peer.sin_addr), peer.sin_port);
/* First of all, lets add STDIN to our list of watched filehandles */
if ((ts->stdin_nsi = nsi_new2(nsp, STDIN_FILENO, NULL)) == NULL) {
fprintf(stderr, "Failed to create stdin msi\n");
exit(1);
}
/* Now lets read from stdin and the network, line buffered (by nsock) */
ts->latest_readtcpev = nsock_readlines(nsp, ts->tcp_nsi, telnet_event_handler, read_timeout, ts, 1);
ts->latest_readstdinev = nsock_readlines(nsp, ts->stdin_nsi, telnet_event_handler, read_timeout, ts, 1);
break;
case NSE_TYPE_READ:
str = nse_readbuf(nse, &nbytes);
if (nsi == ts->tcp_nsi) {
printf("%s", str);
/* printf("Read from tcp socket (%d bytes):\n%s", nbytes, str); */
ts->latest_readtcpev = nsock_readlines(nsp, ts->tcp_nsi, telnet_event_handler, read_timeout, ts, 1);
} else {
/* printf("Read from stdin (%d bytes):\n%s", nbytes, str); */
nsock_write(nsp, ts->tcp_nsi, telnet_event_handler, write_timeout, ts, str, nbytes);
ts->latest_readstdinev = nsock_readlines(nsp, ts->stdin_nsi, telnet_event_handler, read_timeout, ts, 1);
}
break;
case NSE_TYPE_WRITE:
/* Nothing to do, really */
break;
case NSE_TYPE_TIMER:
break;
default:
fprintf(stderr, "telnet_event_handler: Got bogus type -- quitting\n");
exit(1);
break;
}
} else if (status == NSE_STATUS_EOF) {
printf("Got EOF from %s\nCancelling outstanding readevents.\n", (nsi == ts->tcp_nsi)? "tcp socket" : "stdin");
/* One of these is the event I am currently handling! But I wanted to
be evil when testing this out... */
if (nsock_event_cancel(nsp, ts->latest_readtcpev, 1) != 0) {
printf("Cancelled tcp event: %li\n", ts->latest_readtcpev);
}
if (nsock_event_cancel(nsp, ts->latest_readstdinev, 1) != 0) {
printf("Cancelled stdin event: %li\n", ts->latest_readstdinev);
}
} else if (status == NSE_STATUS_ERROR) {
if (nsi_checkssl(nsi)) {
printf("SSL %s failed: %s\n", nse_type2str(type), ERR_error_string(ERR_get_error(), NULL));
} else {
printf("%s failed: %s\n", nse_type2str(type), strerror(socket_errno()));
}
}
return;
/* Now lets read from stdin and the network, line buffered (by nsock) */
ts->latest_readtcpev = nsock_readlines(nsp, ts->tcp_nsi, telnet_event_handler, read_timeout, ts, 1);
ts->latest_readstdinev = nsock_readlines(nsp, ts->stdin_nsi, telnet_event_handler, read_timeout, ts, 1);
break;
case NSE_TYPE_READ:
str = nse_readbuf(nse, &nbytes);
if (nsi == ts->tcp_nsi) {
printf("%s", str);
/* printf("Read from tcp socket (%d bytes):\n%s", nbytes, str); */
ts->latest_readtcpev = nsock_readlines(nsp, ts->tcp_nsi, telnet_event_handler, read_timeout, ts, 1);
} else {
/* printf("Read from stdin (%d bytes):\n%s", nbytes, str); */
nsock_write(nsp, ts->tcp_nsi, telnet_event_handler, write_timeout, ts, str, nbytes);
ts->latest_readstdinev = nsock_readlines(nsp, ts->stdin_nsi, telnet_event_handler, read_timeout, ts, 1);
}
break;
case NSE_TYPE_WRITE:
/* Nothing to do, really */
break;
case NSE_TYPE_TIMER:
break;
default:
fprintf(stderr, "telnet_event_handler: Got bogus type -- quitting\n");
exit(1);
break;
}
} else if (status == NSE_STATUS_EOF) {
printf("Got EOF from %s\nCancelling outstanding readevents.\n", (nsi == ts->tcp_nsi) ? "tcp socket" : "stdin");
/* One of these is the event I am currently handling! But I wanted to
be evil when testing this out... */
if (nsock_event_cancel(nsp, ts->latest_readtcpev, 1) != 0) {
printf("Cancelled tcp event: %li\n", ts->latest_readtcpev);
}
if (nsock_event_cancel(nsp, ts->latest_readstdinev, 1) != 0) {
printf("Cancelled stdin event: %li\n", ts->latest_readstdinev);
}
} else if (status == NSE_STATUS_ERROR) {
if (nsi_checkssl(nsi)) {
printf("SSL %s failed: %s\n", nse_type2str(type), ERR_error_string(ERR_get_error(), NULL));
} else {
printf("%s failed: %s\n", nse_type2str(type), strerror(socket_errno()));
}
}
return;
}
void usage() {
fprintf(stderr, "\nUsage: nsock_telnet [-s] [-t tracelevel] <hostnameorip> [portnum]\n"
" Where -s enables SSL for the connection\n\n");
fprintf(stderr, "\nUsage: nsock_telnet [-s] [-t tracelevel] <hostnameorip> [portnum]\n" " Where -s enables SSL for the connection\n\n");
exit(1);
}
@@ -204,8 +201,8 @@ int main(int argc, char *argv[]) {
ts.stdin_nsi = NULL;
while((c = getopt(argc, argv, "st:")) != -1) {
switch(c) {
while ((c = getopt(argc, argv, "st:")) != -1) {
switch (c) {
case 's':
usessl = 1;
break;
@@ -214,7 +211,8 @@ int main(int argc, char *argv[]) {
assert(tracelevel >= 0);
break;
default:
usage(); break;
usage();
break;
}
}
@@ -230,7 +228,8 @@ int main(int argc, char *argv[]) {
if (optind < argc)
portno = atoi(argv[optind]);
else portno = 23;
else
portno = 23;
/* OK, we start with creating a p00l */
if ((nsp = nsp_new(NULL)) == NULL) {
@@ -251,12 +250,10 @@ int main(int argc, char *argv[]) {
taddr.sin_addr = target;
taddr.sin_port = portno;
if (usessl)
{
if (usessl) {
ts.ssl_session = NULL;
ev = nsock_connect_ssl(nsp, ts.tcp_nsi, telnet_event_handler, 10000, &ts, (struct sockaddr *)&taddr, sizeof taddr, IPPROTO_TCP, portno, ts.ssl_session);
}
else
} else
ev = nsock_connect_tcp(nsp, ts.tcp_nsi, telnet_event_handler, 10000, &ts, (struct sockaddr *)&taddr, sizeof taddr, portno);
printf("The event id is %lu -- initiating l00p\n", ev);
@@ -264,7 +261,7 @@ int main(int argc, char *argv[]) {
/* Now lets get this party started right! */
loopret = nsock_loop(nsp, -1);
printf("nsock_loop returned %d\n", (int) loopret);
printf("nsock_loop returned %d\n", (int)loopret);
return 0;
}

View File

@@ -68,73 +68,71 @@
#include <assert.h>
nsock_event_id ev_ids[2048];
int num_ids = 0;
nsock_event_id request_timer(nsock_pool nsp, nsock_ev_handler handler,
int timeout_msecs, void *userdata) {
nsock_event_id request_timer(nsock_pool nsp, nsock_ev_handler handler, int timeout_msecs, void *userdata) {
nsock_event_id id;
id = nsock_timer_create(nsp, handler, timeout_msecs, userdata);
printf("%ld: Created timer ID %li for %d ms from now\n", time(NULL), id,
timeout_msecs);
printf("%ld: Created timer ID %li for %d ms from now\n", time(NULL), id, timeout_msecs);
return id;
}
int try_cancel_timer(nsock_pool *nsp, int idx, int notify) {
int try_cancel_timer(nsock_pool * nsp, int idx, int notify) {
int res;
printf("%ld:Attempting to cancel id %li (idx %d) %s notify.\n",
time(NULL), ev_ids[idx], idx, ((notify)? "WITH" : "WITHOUT"));
printf("%ld:Attempting to cancel id %li (idx %d) %s notify.\n", time(NULL), ev_ids[idx], idx, ((notify) ? "WITH" : "WITHOUT"));
res = nsock_event_cancel(nsp, ev_ids[idx], notify);
printf("Kill of %li %s\n", ev_ids[idx], (res == 0)? "FAILED" : "SUCCEEDED");
printf("Kill of %li %s\n", ev_ids[idx], (res == 0) ? "FAILED" : "SUCCEEDED");
return res;
}
void timer_handler(nsock_pool nsp, nsock_event nse, void *mydata) {
enum nse_status status = nse_status(nse);
enum nse_type type = nse_type(nse);
int rnd, rnd2;
printf("%ld:timer_handler: Received callback of type %s; status %s; id %li\n",
time(NULL), nse_type2str(type), nse_status2str(status), nse_id(nse));
enum nse_status status = nse_status(nse);
enum nse_type type = nse_type(nse);
int rnd, rnd2;
rnd = rand() % num_ids;
rnd2 = rand() % 3;
printf("%ld:timer_handler: Received callback of type %s; status %s; id %li\n", time(NULL), nse_type2str(type), nse_status2str(status), nse_id(nse));
if (num_ids > (sizeof(ev_ids) / sizeof(nsock_event_id)) - 3) {
printf("\n\nSUCCEEDED DUE TO CREATING ENOUGH EVENTS THAT IT WAS GOING TO OVERFLOW MY BUFFER :)\n\n");
exit(0);
}
rnd = rand() % num_ids;
rnd2 = rand() % 3;
if (status == NSE_STATUS_SUCCESS) {
switch(rnd2) {
case 0:
/* do nothing */
/* Actually I think I'll create two timers :) */
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
break;
case 1:
/* Kill another id (which may or may not be active */
try_cancel_timer(nsp, rnd, rand() % 2);
break;
case 2:
/* Create a new timer */
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
break;
default:
assert(0);
}
}
if (num_ids > (sizeof(ev_ids) / sizeof(nsock_event_id)) - 3) {
printf("\n\nSUCCEEDED DUE TO CREATING ENOUGH EVENTS THAT IT WAS GOING TO OVERFLOW MY BUFFER :)\n\n");
exit(0);
}
if (status == NSE_STATUS_SUCCESS) {
switch (rnd2) {
case 0:
/* do nothing */
/* Actually I think I'll create two timers :) */
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
break;
case 1:
/* Kill another id (which may or may not be active */
try_cancel_timer(nsp, rnd, rand() % 2);
break;
case 2:
/* Create a new timer */
ev_ids[num_ids++] = request_timer(nsp, timer_handler, rand() % 3000, NULL);
break;
default:
assert(0);
}
}
}
int main(int argc, char *argv[]) {
nsock_pool nsp;
enum nsock_loopstatus loopret;
int num_loops = 0;
srand(time(NULL));
nsock_pool nsp;
enum nsock_loopstatus loopret;
int num_loops = 0;
srand(time(NULL));
/* OK, we start with creating a p00l */
if ((nsp = nsp_new(NULL)) == NULL) {
fprintf(stderr, "Failed to create new pool. QUITTING.\n");
@@ -150,7 +148,7 @@ int main(int argc, char *argv[]) {
ev_ids[num_ids++] = request_timer(nsp, timer_handler, 100, NULL);
/* Now lets get this party started right! */
while(num_loops++ < 5) {
while (num_loops++ < 5) {
loopret = nsock_loop(nsp, 1500);
if (loopret == NSOCK_LOOP_TIMEOUT)
printf("Finished l00p #%d due to l00p timeout :) I may do another\n", num_loops);
@@ -168,4 +166,3 @@ int main(int argc, char *argv[]) {
return 0;
}