fixed typo in socket code
parent
10492c2f2d
commit
b022dfd1d9
|
@ -8,7 +8,6 @@
|
||||||
|
|
||||||
<erg> if write returns -1 and errno == EINTR then it's not a real error, you can try again
|
<erg> if write returns -1 and errno == EINTR then it's not a real error, you can try again
|
||||||
- single-stepper and variable access: wrong namespace?
|
- single-stepper and variable access: wrong namespace?
|
||||||
- investigate if COPYING_GEN needs a fix
|
|
||||||
- http keep alive, and range get
|
- http keep alive, and range get
|
||||||
- sleep word
|
- sleep word
|
||||||
- fix i/o on generic x86/ppc unix
|
- fix i/o on generic x86/ppc unix
|
||||||
|
|
|
@ -29,7 +29,7 @@ SYMBOL: meta-executing
|
||||||
10 <vector> meta-r set
|
10 <vector> meta-r set
|
||||||
10 <vector> meta-d set
|
10 <vector> meta-d set
|
||||||
namestack meta-n set
|
namestack meta-n set
|
||||||
f meta-c set
|
catchstack meta-c set
|
||||||
f meta-cf set
|
f meta-cf set
|
||||||
f meta-executing set ;
|
f meta-executing set ;
|
||||||
|
|
||||||
|
@ -51,7 +51,11 @@ SYMBOL: meta-executing
|
||||||
#! swap in the old stacks. This is so messy.
|
#! swap in the old stacks. This is so messy.
|
||||||
push-d datastack push-d
|
push-d datastack push-d
|
||||||
meta-d get set-datastack
|
meta-d get set-datastack
|
||||||
|
catchstack >r meta-c set-catchstack
|
||||||
|
namestack >r meta-n set-namestack
|
||||||
>r execute datastack r> tuck push
|
>r execute datastack r> tuck push
|
||||||
|
r> set-namestack
|
||||||
|
r> set-catchstack
|
||||||
set-datastack meta-d set ;
|
set-datastack meta-d set ;
|
||||||
|
|
||||||
: meta-call ( quot -- )
|
: meta-call ( quot -- )
|
||||||
|
@ -86,10 +90,6 @@ SYMBOL: meta-executing
|
||||||
\ r> [ pop-r push-d ] set-meta-word
|
\ r> [ pop-r push-d ] set-meta-word
|
||||||
\ callstack [ meta-r get clone push-d ] set-meta-word
|
\ callstack [ meta-r get clone push-d ] set-meta-word
|
||||||
\ set-callstack [ pop-d clone meta-r set ] set-meta-word
|
\ set-callstack [ pop-d clone meta-r set ] set-meta-word
|
||||||
\ namestack [ meta-n get push-d ] set-meta-word
|
|
||||||
\ set-namestack [ pop-d meta-n set ] set-meta-word
|
|
||||||
\ catchstack [ meta-c get push-d ] set-meta-word
|
|
||||||
\ set-catchstack [ pop-d meta-c set ] set-meta-word
|
|
||||||
\ call [ pop-d meta-call ] set-meta-word
|
\ call [ pop-d meta-call ] set-meta-word
|
||||||
\ execute [ pop-d meta-word ] set-meta-word
|
\ execute [ pop-d meta-word ] set-meta-word
|
||||||
\ ifte [ pop-d pop-d pop-d [ nip ] [ drop ] ifte meta-call ] set-meta-word
|
\ ifte [ pop-d pop-d pop-d [ nip ] [ drop ] ifte meta-call ] set-meta-word
|
||||||
|
|
|
@ -13,7 +13,7 @@ USING: namespaces ;
|
||||||
|
|
||||||
: (io-error) errno strerror throw ;
|
: (io-error) errno strerror throw ;
|
||||||
|
|
||||||
: check-null ( n -- ) dup 0 = [ (io-error) ] when ;
|
: check-null ( n -- ) 0 = [ (io-error) ] when ;
|
||||||
|
|
||||||
: io-error ( n -- ) 0 < [ (io-error) ] when ;
|
: io-error ( n -- ) 0 < [ (io-error) ] when ;
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
! We need to fiddle with the exact search order here, since
|
! We need to fiddle with the exact search order here, since
|
||||||
! unix-internals::accept shadows streams::accept.
|
! unix-internals::accept shadows streams::accept.
|
||||||
IN: io-internals
|
IN: io-internals
|
||||||
USING: namespaces streams threads unparser ;
|
USING: errors namespaces streams threads unparser ;
|
||||||
USING: alien generic kernel math unix-internals ;
|
USING: alien generic kernel math unix-internals ;
|
||||||
|
|
||||||
: init-sockaddr ( port -- sockaddr )
|
: init-sockaddr ( port -- sockaddr )
|
||||||
|
@ -15,8 +15,10 @@ USING: alien generic kernel math unix-internals ;
|
||||||
: client-sockaddr ( host port -- sockaddr )
|
: client-sockaddr ( host port -- sockaddr )
|
||||||
#! Error handling here
|
#! Error handling here
|
||||||
init-sockaddr [
|
init-sockaddr [
|
||||||
>r gethostbyname dup [ "Host lookup failed" ] unless
|
>r gethostbyname dup [
|
||||||
hostent-addr dup check-null r> set-sockaddr-in-addr
|
"Host lookup failed" throw
|
||||||
|
] unless hostent-addr dup check-null
|
||||||
|
r> set-sockaddr-in-addr
|
||||||
] keep ;
|
] keep ;
|
||||||
|
|
||||||
: socket-fd ( -- socket )
|
: socket-fd ( -- socket )
|
||||||
|
|
Loading…
Reference in New Issue