version 1.9, 2006/10/07 19:55:28
|
version 1.10, 2006/10/07 22:28:34
|
Line 69 sockaddr-tmp sockaddr_in %size dup allot
|
Line 69 sockaddr-tmp sockaddr_in %size dup allot
|
\G converts a internet name into a IPv4 address |
\G converts a internet name into a IPv4 address |
\G the resulting address is in network byte order |
\G the resulting address is in network byte order |
c-string gethostbyname dup 0= abort" address not found" |
c-string gethostbyname dup 0= abort" address not found" |
h_addr_list @ @ @ ; |
h_addr_list @ @ @ ntohl ; |
|
|
2 Constant PF_INET |
2 Constant PF_INET |
1 Constant SOCK_STREAM |
1 Constant SOCK_STREAM |
Line 86 sockaddr-tmp sockaddr_in %size dup allot
|
Line 86 sockaddr-tmp sockaddr_in %size dup allot
|
htonl r> sin_addr l! ; |
htonl r> sin_addr l! ; |
|
|
: open-socket ( addr u port -- fid ) |
: open-socket ( addr u port -- fid ) |
-rot host>addr swap sockaddr-tmp >inetaddr |
-rot host>addr |
|
swap sockaddr-tmp >inetaddr |
new-socket >r |
new-socket >r |
r@ sockaddr-tmp sockaddr_in %size connect 0< abort" can't connect" |
r@ sockaddr-tmp sockaddr_in %size connect 0< abort" can't connect" |
r> s" w+" c-string fdopen ; |
r> s" w+" c-string fdopen ; |