From: Robert W. <wrw...@us...> - 2007-08-14 03:44:01
|
Update of /cvsroot/linuxisns/isnsNT/isnsclient/src In directory sc8-pr-cvs6.sourceforge.net:/tmp/cvs-serv10440/src Modified Files: comm.c entity.c fcnode.c ifcp.c iscsi.c isns.c portal.c Log Message: add support for DNS Index: portal.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/portal.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** portal.c 12 Jan 2007 21:13:01 -0000 1.9 --- portal.c 14 Aug 2007 03:43:55 -0000 1.10 *************** *** 165,169 **** GetPortals (void) { ! char buffer[2048]; char cmdLine[256]; int c_size; --- 165,169 ---- GetPortals (void) { ! char buffer[MAX_PAYLOAD_SIZE]; char cmdLine[256]; int c_size; Index: fcnode.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/fcnode.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** fcnode.c 28 Nov 2006 22:00:47 -0000 1.3 --- fcnode.c 14 Aug 2007 03:43:55 -0000 1.4 *************** *** 79,83 **** { int len; ! char buffer[256]; ISNS_CMD cmd; --- 79,83 ---- { int len; ! char buffer[MAX_PAYLOAD_SIZE]; ISNS_CMD cmd; *************** *** 126,130 **** ParseFCNodeQuery (char *buffer) { ! char buffer2[256]; ISNS_Attr *p_attr; ISNS_HDR *pdu; --- 126,130 ---- ParseFCNodeQuery (char *buffer) { ! char buffer2[MAX_PAYLOAD_SIZE]; ISNS_Attr *p_attr; ISNS_HDR *pdu; *************** *** 216,220 **** GetFCNode (void) { ! char buffer[2048]; ISNS_CMD cmd; --- 216,220 ---- GetFCNode (void) { ! char buffer[MAX_PAYLOAD_SIZE]; ISNS_CMD cmd; Index: iscsi.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/iscsi.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** iscsi.c 30 Mar 2007 22:55:22 -0000 1.9 --- iscsi.c 14 Aug 2007 03:43:55 -0000 1.10 *************** *** 205,209 **** GetISCSI (void) { ! char buffer[2048]; char cmdLine[256]; int c_size; --- 205,209 ---- GetISCSI (void) { ! char buffer[MAX_PAYLOAD_SIZE]; char cmdLine[256]; int c_size; Index: isns.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/isns.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** isns.c 13 Aug 2007 22:56:44 -0000 1.10 --- isns.c 14 Aug 2007 03:43:55 -0000 1.11 *************** *** 310,314 **** pdu = (struct isns_hdr *)buffer; ptr = buffer + sizeof (ISNS_HDR) + 4; ! printf("pdu->len:%d\n",pdu->len); while (ptr < (buffer + sizeof (ISNS_HDR) + pdu->len) ) --- 310,315 ---- pdu = (struct isns_hdr *)buffer; ptr = buffer + sizeof (ISNS_HDR) + 4; ! if (pdu->len > MAX_PAYLOAD_SIZE) ! printf("ERROR pdu->len:%d\n",pdu->len); while (ptr < (buffer + sizeof (ISNS_HDR) + pdu->len) ) *************** *** 630,634 **** { static int sym_integer=0; ! char buffer[256]; char cmdLine[256]; int id; --- 631,635 ---- { static int sym_integer=0; ! char buffer[MAX_PAYLOAD_SIZE]; char cmdLine[256]; int id; *************** *** 1040,1044 **** Send_ESI_Response (ISNS_CMD * p_cmd, int size) { ! char rbuffer[1024]; ISNS_CMD *p_rcmd; --- 1041,1045 ---- Send_ESI_Response (ISNS_CMD * p_cmd, int size) { ! char rbuffer[MAX_PAYLOAD_SIZE]; ISNS_CMD *p_rcmd; Index: entity.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/entity.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** entity.c 19 Dec 2006 20:33:49 -0000 1.8 --- entity.c 14 Aug 2007 03:43:55 -0000 1.9 *************** *** 155,159 **** { int c_size; ! char buffer[2048]; char cmdLine[256]; ISNS_CMD cmd; --- 155,159 ---- { int c_size; ! char buffer[MAX_PAYLOAD_SIZE]; char cmdLine[256]; ISNS_CMD cmd; Index: ifcp.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/ifcp.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ifcp.c 18 Dec 2006 23:00:03 -0000 1.4 --- ifcp.c 14 Aug 2007 03:43:55 -0000 1.5 *************** *** 45,49 **** ParseIFCPQuery (char *buffer) { ! char buffer2[256]; ISNS_Attr *p_attr; ISNS_HDR *pdu; --- 45,49 ---- ParseIFCPQuery (char *buffer) { ! char buffer2[MAX_PAYLOAD_SIZE]; ISNS_Attr *p_attr; ISNS_HDR *pdu; *************** *** 477,481 **** GetIFCP (void) { ! char buffer[2048]; char cmdLine[256]; int c_size; --- 477,481 ---- GetIFCP (void) { ! char buffer[MAX_PAYLOAD_SIZE]; char cmdLine[256]; int c_size; Index: comm.c =================================================================== RCS file: /cvsroot/linuxisns/isnsNT/isnsclient/src/comm.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** comm.c 15 Mar 2007 22:28:30 -0000 1.8 --- comm.c 14 Aug 2007 03:43:55 -0000 1.9 *************** *** 49,52 **** --- 49,53 ---- #include <errno.h> #include <poll.h> + #include <netdb.h> MSG_CB msg_q[MSG_Q_SIZE]; /* TCP msg Q */ *************** *** 73,76 **** --- 74,78 ---- extern char p_ip[256]; char multicast_addr[20]; + struct addrinfo hints, *res; /***********************************************************************/ *************** *** 87,90 **** --- 89,93 ---- int timeout = 5; // # seconds struct pollfd fds; + char port[16]; #ifndef SNS_LINUX *************** *** 107,110 **** --- 110,124 ---- } + memset(&hints,0,sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; + hints.ai_socktype = SOCK_STREAM; + sprintf(port,"%i",isns_port); + rc = getaddrinfo(p_ip,port,&hints,&res); + if (rc != 0) + { + printf("Failed to resolve host:%i %s\n",rc,strerror(errno)); + return rc; + } + if (tcpFlag) { *************** *** 120,130 **** fcntl (fd, F_SETFL, flags | O_NONBLOCK); - /* Setup Variables, Addresses, Etc. */ - their_addr.sin_family = AF_INET; /* host byte order */ - their_addr.sin_port = htons ((short) isns_port); /* short, network byte order */ - their_addr.sin_addr.s_addr = inet_addr (p_ip); - printf ("Connecting to %s...\n", p_ip); ! rc = connect (fd, (struct sockaddr *) &their_addr, sizeof (their_addr)); if (rc < 0) { --- 134,139 ---- fcntl (fd, F_SETFL, flags | O_NONBLOCK); printf ("Connecting to %s...\n", p_ip); ! rc = connect (fd, res->ai_addr, res->ai_addrlen); if (rc < 0) { *************** *** 185,195 **** } ! /* setup for the bind */ ! my_addr.sin_family = AF_INET; ! my_addr.sin_port = htons ((short) 0); ! my_addr.sin_addr.s_addr = INADDR_ANY; ! ! /* Do a Bind */ ! rc = bind (fd, (struct sockaddr *) &my_addr, sizeof (my_addr)); if (rc < 0) { --- 194,198 ---- } ! rc = connect (fd, res->ai_addr, res->ai_addrlen); if (rc < 0) { *************** *** 198,211 **** } - /* Setup Variables, Addresses, Etc. */ - their_addr.sin_family = AF_INET; /* host byte order */ - their_addr.sin_port = htons ((short) isns_port); /* short, network byte order */ - their_addr.sin_addr.s_addr = inet_addr (p_ip); - /* setup socket to nonblocking so we can do a timeout on the connect call */ flags = fcntl(fd, F_GETFL,0); fcntl (fd, F_SETFL, flags | O_NONBLOCK); } ! return (0); } --- 201,209 ---- } /* setup socket to nonblocking so we can do a timeout on the connect call */ flags = fcntl(fd, F_GETFL,0); fcntl (fd, F_SETFL, flags | O_NONBLOCK); } ! //freeaddrinfo(res); return (0); } *************** *** 286,290 **** /* Using UDP */ len = sizeof (their_addr); ! e = recvfrom (fd, (char *)cmd, size, 0, (struct sockaddr *) &their_addr,&len); if (e < 0) --- 284,288 ---- /* Using UDP */ len = sizeof (their_addr); ! e = recvfrom (fd, (char *)cmd, size, 0, res->ai_addr, &res->ai_addrlen); if (e < 0) *************** *** 323,329 **** else { ! e = sendto (fd, (char *) cmd, len, 0, ! (struct sockaddr *) &their_addr, sizeof (their_addr)); ! if (e < 0) { --- 321,325 ---- else { ! e = sendto (fd, (char *) cmd, len, 0, res->ai_addr, res->ai_addrlen); if (e < 0) { *************** *** 349,353 **** } - return (e); } --- 345,348 ---- *************** *** 360,364 **** { int e; ! char buffer[1500]; int len = cmd->hdr.len + sizeof (ISNS_HDR); int errorCode; --- 355,359 ---- { int e; ! char buffer[MAX_PAYLOAD_SIZE]; int len = cmd->hdr.len + sizeof (ISNS_HDR); int errorCode; *************** *** 787,791 **** { int e; ! char buffer[2048]; ISNS_CMD *p_cmd; int msg_size; --- 782,786 ---- { int e; ! char buffer[MAX_PAYLOAD_SIZE]; ISNS_CMD *p_cmd; int msg_size; |