Commit 031f3088b32bf66de3529a5ea3fc98f77d649f7c
1 parent
79f8d70b
Exists in
master
and in
5 other branches
Remodelando poll de sockets
Showing
5 changed files
with
14 additions
and
6 deletions
Show diff stats
src/include/lib3270.h
| ... | ... | @@ -667,7 +667,7 @@ |
| 667 | 667 | LIB3270_IO_FLAG_MASK = 0x07 |
| 668 | 668 | } LIB3270_IO_FLAG; |
| 669 | 669 | |
| 670 | - LIB3270_EXPORT void * lib3270_add_poll_fd(H3270 *session, int fd, LIB3270_IO_FLAG flag, void(*call)(H3270 *, LIB3270_IO_FLAG, void *), void *userdata ); | |
| 670 | + LIB3270_EXPORT void * lib3270_add_poll_fd(H3270 *session, int fd, LIB3270_IO_FLAG flag, void(*call)(H3270 *, int, LIB3270_IO_FLAG, void *), void *userdata ); | |
| 671 | 671 | LIB3270_EXPORT void lib3270_remove_poll(void *id); |
| 672 | 672 | |
| 673 | 673 | // LIB3270_EXPORT void lib3270_remove_poll_fd(int fd); | ... | ... |
src/lib3270/connect.c
| ... | ... | @@ -77,7 +77,7 @@ |
| 77 | 77 | |
| 78 | 78 | |
| 79 | 79 | //static void net_connected(H3270 *hSession) |
| 80 | -static void net_connected(H3270 *hSession, LIB3270_IO_FLAG flag, void *dunno) | |
| 80 | +static void net_connected(H3270 *hSession, int fd, LIB3270_IO_FLAG flag, void *dunno) | |
| 81 | 81 | { |
| 82 | 82 | int err; |
| 83 | 83 | socklen_t len = sizeof(err); | ... | ... |
src/lib3270/iocalls.c
| ... | ... | @@ -281,6 +281,14 @@ static void internal_remove_poll(void *id) |
| 281 | 281 | inputs_changed = True; |
| 282 | 282 | } |
| 283 | 283 | |
| 284 | +LIB3270_EXPORT void lib3270_remove_poll(void *id) { | |
| 285 | + remove_poll(id); | |
| 286 | +} | |
| 287 | + | |
| 288 | +LIB3270_EXPORT void * lib3270_add_poll_fd(H3270 *session, int fd, LIB3270_IO_FLAG flag, void(*call)(H3270 *, int, LIB3270_IO_FLAG, void *), void *userdata ) { | |
| 289 | + return add_poll(session,fd,flag,call,userdata); | |
| 290 | +} | |
| 291 | + | |
| 284 | 292 | /* Event dispatcher. */ |
| 285 | 293 | static int internal_event_dispatcher(H3270 *hSession, int block) |
| 286 | 294 | { | ... | ... |
src/lib3270/telnet.c
| ... | ... | @@ -988,7 +988,7 @@ LIB3270_EXPORT void lib3270_data_recv(H3270 *hSession, size_t nr, const unsigned |
| 988 | 988 | * @param hSession Session handle |
| 989 | 989 | * |
| 990 | 990 | */ |
| 991 | -void net_input(H3270 *hSession, LIB3270_IO_FLAG flag, void *dunno) | |
| 991 | +void net_input(H3270 *hSession, int fd, LIB3270_IO_FLAG flag, void *dunno) | |
| 992 | 992 | { |
| 993 | 993 | // register unsigned char * cp; |
| 994 | 994 | int nr; |
| ... | ... | @@ -1950,7 +1950,7 @@ process_eor(H3270 *hSession) |
| 1950 | 1950 | * net_exception |
| 1951 | 1951 | * Called when there is an exceptional condition on the socket. |
| 1952 | 1952 | */ |
| 1953 | -void net_exception(H3270 *session, LIB3270_IO_FLAG flag, void *dunno) | |
| 1953 | +void net_exception(H3270 *session, int fd, LIB3270_IO_FLAG flag, void *dunno) | |
| 1954 | 1954 | { |
| 1955 | 1955 | CHECK_SESSION_HANDLE(session); |
| 1956 | 1956 | ... | ... |
src/lib3270/telnetc.h
| ... | ... | @@ -34,8 +34,8 @@ LIB3270_INTERNAL void net_add_eor(unsigned char *buf, int len); |
| 34 | 34 | LIB3270_INTERNAL void net_break(H3270 *hSession); |
| 35 | 35 | LIB3270_INTERNAL int net_connect(H3270 *session, const char *, char *, Boolean, Boolean *, Boolean *); |
| 36 | 36 | LIB3270_INTERNAL void net_disconnect(H3270 *session); |
| 37 | -LIB3270_INTERNAL void net_exception(H3270 *session, LIB3270_IO_FLAG flag, void *dunno); | |
| 38 | -LIB3270_INTERNAL void net_input(H3270 *session, LIB3270_IO_FLAG flag, void *dunno); | |
| 37 | +LIB3270_INTERNAL void net_exception(H3270 *session, int fd, LIB3270_IO_FLAG flag, void *dunno); | |
| 38 | +LIB3270_INTERNAL void net_input(H3270 *session, int fd, LIB3270_IO_FLAG flag, void *dunno); | |
| 39 | 39 | LIB3270_INTERNAL void net_interrupt(H3270 *hSession); |
| 40 | 40 | LIB3270_INTERNAL void net_output(H3270 *hSession); |
| 41 | 41 | LIB3270_INTERNAL void net_sendc(H3270 *hSession, char c); | ... | ... |