Commit d58165ff939d2add1d8a435e52948a97273c102c

Authored by Perry Werneck
1 parent 8321dde6

Fixing windows build.

Showing 2 changed files with 16 additions and 30 deletions   Show diff stats
src/core/iocalls.c
... ... @@ -531,7 +531,7 @@ int non_blocking(H3270 *hSession, Boolean on)
531 531 WSASetLastError(0);
532 532 u_long iMode= on ? 1 : 0;
533 533  
534   - if(ioctlsocket(hSession->sock,FIONBIO,&iMode))
  534 + if(ioctlsocket(hSession->connection.sock,FIONBIO,&iMode))
535 535 {
536 536 lib3270_popup_dialog( hSession,
537 537 LIB3270_NOTIFY_ERROR,
... ...
src/core/windows/connect.c
... ... @@ -47,7 +47,7 @@
47 47 #include <iconv.h>
48 48 #endif // HAVE_ICONV
49 49  
50   -#define SOCK_CLOSE(s) closesocket(s->sock); s->sock = -1;
  50 +#define SOCK_CLOSE(s) closesocket(s->connection.sock); s->connection.sock = -1;
51 51  
52 52 #include "hostc.h"
53 53 #include "trace_dsc.h"
... ... @@ -70,7 +70,7 @@ static void net_connected(H3270 *hSession, int GNUC_UNUSED(fd), LIB3270_IO_FLAG
70 70 hSession->xio.write = NULL;
71 71 }
72 72  
73   - if(getsockopt(hSession->sock, SOL_SOCKET, SO_ERROR, (char *) &err, &len) < 0)
  73 + if(getsockopt(hSession->connection.sock, SOL_SOCKET, SO_ERROR, (char *) &err, &len) < 0)
74 74 {
75 75 lib3270_disconnect(hSession);
76 76 lib3270_popup_dialog( hSession,
... ... @@ -97,8 +97,8 @@ static void net_connected(H3270 *hSession, int GNUC_UNUSED(fd), LIB3270_IO_FLAG
97 97 return;
98 98 }
99 99  
100   - hSession->xio.except = lib3270_add_poll_fd(hSession,hSession->sock,LIB3270_IO_FLAG_EXCEPTION,net_exception,0);
101   - hSession->xio.read = lib3270_add_poll_fd(hSession,hSession->sock,LIB3270_IO_FLAG_READ,net_input,0);
  100 + hSession->xio.except = lib3270_add_poll_fd(hSession,hSession->connection.sock,LIB3270_IO_FLAG_EXCEPTION,net_exception,0);
  101 + hSession->xio.read = lib3270_add_poll_fd(hSession,hSession->connection.sock,LIB3270_IO_FLAG_READ,net_input,0);
102 102  
103 103 #if defined(HAVE_LIBSSL)
104 104 if(hSession->ssl.con && hSession->ssl.state == LIB3270_SSL_UNDEFINED)
... ... @@ -187,10 +187,10 @@ static void sockstart(H3270 *session)
187 187  
188 188 status_connecting(hSession);
189 189  
190   - for(rp = result; hSession->sock < 0 && rp != NULL; rp = rp->ai_next)
  190 + for(rp = result; hSession->connection.sock < 0 && rp != NULL; rp = rp->ai_next)
191 191 {
192   - hSession->sock = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol);
193   - if(hSession->sock < 0)
  192 + hSession->connection.sock = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol);
  193 + if(hSession->connection.sock < 0)
194 194 {
195 195 ((struct resolver *) host)->rc = errno;
196 196 ((struct resolver *) host)->message = strerror(errno);
... ... @@ -198,7 +198,7 @@ static void sockstart(H3270 *session)
198 198 }
199 199  
200 200 // Connected!
201   - if(connect(hSession->sock, rp->ai_addr, rp->ai_addrlen))
  201 + if(connect(hSession->connection.sock, rp->ai_addr, rp->ai_addrlen))
202 202 {
203 203 SOCK_CLOSE(hSession);
204 204 ((struct resolver *) host)->rc = errno;
... ... @@ -222,7 +222,7 @@ int net_reconnect(H3270 *hSession, int seconds)
222 222  
223 223 sockstart(hSession);
224 224  
225   - if(lib3270_run_task(hSession, background_connect, &host) || hSession->sock < 0)
  225 + if(lib3270_run_task(hSession, background_connect, &host) || hSession->connection.sock < 0)
226 226 {
227 227 lib3270_autoptr(char) message = lib3270_strdup_printf(_( "Can't connect to %s"), lib3270_get_url(hSession));
228 228  
... ... @@ -326,7 +326,7 @@ int net_reconnect(H3270 *hSession, int seconds)
326 326 WSASetLastError(0);
327 327  
328 328 int optval = lib3270_get_toggle(hSession,LIB3270_TOGGLE_KEEP_ALIVE) ? 1 : 0;
329   - if (setsockopt(hSession->sock, SOL_SOCKET, SO_KEEPALIVE, (char *)&optval, sizeof(optval)) < 0)
  329 + if (setsockopt(hSession->connection.sock, SOL_SOCKET, SO_KEEPALIVE, (char *)&optval, sizeof(optval)) < 0)
330 330 {
331 331 char buffer[4096];
332 332 snprintf(buffer,4095,N_( "Can't %s network keep-alive" ), optval ? _( "enable" ) : _( "disable" ));
... ... @@ -345,7 +345,7 @@ int net_reconnect(H3270 *hSession, int seconds)
345 345 }
346 346  
347 347 optval = 1;
348   - if (setsockopt(hSession->sock, SOL_SOCKET, SO_OOBINLINE, (char *)&optval,sizeof(optval)) < 0)
  348 + if (setsockopt(hSession->connection.sock, SOL_SOCKET, SO_OOBINLINE, (char *)&optval,sizeof(optval)) < 0)
349 349 {
350 350 lib3270_popup_dialog( hSession,
351 351 LIB3270_NOTIFY_ERROR,
... ... @@ -356,25 +356,11 @@ int net_reconnect(H3270 *hSession, int seconds)
356 356 return errno = ENOTCONN;
357 357 }
358 358  
359   - // set options for inline out-of-band data and keepalives
360   -
361   - /*
362   -#if defined(OMTU)
363   - else if (setsockopt(hSession->sock, SOL_SOCKET, SO_SNDBUF, (char *)&mtu,sizeof(mtu)) < 0)
364   - {
365   - popup_a_sockerr(hSession, N_( "setsockopt(%s)" ), "SO_SNDBUF");
366   - SOCK_CLOSE(hSession);
367   - }
368   -#endif
369   -
370   - */
371   -
372 359 // Connecting, set callbacks, wait for connection
373   - hSession->cstate = LIB3270_PENDING;
  360 + lib3270_set_cstate(hSession, LIB3270_PENDING);
374 361 lib3270_st_changed(hSession, LIB3270_STATE_HALF_CONNECT, True);
375 362  
376   - hSession->xio.write = lib3270_add_poll_fd(hSession,hSession->sock,LIB3270_IO_FLAG_WRITE,net_connected,0);
377   - // hSession->ns_write_id = AddOutput(hSession->sock, hSession, net_connected);
  363 + hSession->xio.write = lib3270_add_poll_fd(hSession,hSession->connection.sock,LIB3270_IO_FLAG_WRITE,net_connected,0);
378 364  
379 365 trace("%s: Connection in progress",__FUNCTION__);
380 366  
... ... @@ -386,7 +372,7 @@ int net_reconnect(H3270 *hSession, int seconds)
386 372 {
387 373 lib3270_main_iterate(hSession,1);
388 374  
389   - switch(hSession->cstate)
  375 + switch(hSession->connection.state)
390 376 {
391 377 case LIB3270_PENDING:
392 378 case LIB3270_CONNECTED_INITIAL:
... ... @@ -405,7 +391,7 @@ int net_reconnect(H3270 *hSession, int seconds)
405 391 return 0;
406 392  
407 393 default:
408   - lib3270_write_log(hSession,"connect", "%s: State changed to unexpected state %d",__FUNCTION__,hSession->cstate);
  394 + lib3270_write_log(hSession,"connect", "%s: State changed to unexpected state %d",__FUNCTION__,hSession->connection.state);
409 395 return -1;
410 396 }
411 397  
... ...