version 1.1, 2001/04/20 13:38:31 |
version 1.2, 2001/04/21 06:38:37 |
|
|
%% $OpenXM$ |
%% $OpenXM: OpenXM/src/kan96xx/Doc/httpd-asir.sm1,v 1.1 2001/04/20 13:38:31 takayama Exp $ |
%% http server by sm1 |
%% http server by sm1 |
|
|
|
/httpd.port 1200 def |
[(parse) (oxasir.sm1) pushfile] extension |
[(parse) (oxasir.sm1) pushfile] extension |
(oxasir.started) boundp { |
(oxasir.started) boundp { |
} { |
} { |
[(x^2-1) (x)] fctr pop |
[(x^2-1) (x)] fctr pop |
} ifelse |
} ifelse |
|
|
/startserver { |
/httpd_startserver { |
[(sm1.socket) (open) [1200 (localhost)]] extension /server.fdAndPort set |
[(sm1.socket) (open) [httpd.port (localhost)]] extension |
|
/server.fdAndPort set |
(sm1.socket.open returns ) messagen server.fdAndPort message |
(sm1.socket.open returns ) messagen server.fdAndPort message |
[(sm1.socket) (accept) [server.fdAndPort 0 get]] extension |
[(sm1.socket) (accept) [server.fdAndPort 0 get]] extension |
/server.fd set |
/server.fd set |
|
|
(sm1.socket.accept returns ) messagen server.fd message |
(sm1.socket.accept returns ) messagen server.fd message |
} def |
} def |
|
|
/stopserver { |
/httpd_stopserver { |
[(sm1.socket) (close) server.fd ] extension message |
[(sm1.socket) (close) server.fd ] extension message |
} def |
} def |
|
|
|
|
} def |
} def |
|
|
/sendln { |
/sendln { |
/mmm set |
/arg1 set |
|
[/in-sendln /mmm] pushVariables |
|
[ arg1 /mmm set |
mmm tag 5 eq { |
mmm tag 5 eq { |
[mmm 10 (string) dc] cat /mmm set |
[mmm 10 (string) dc] cat /mmm set |
}{ |
}{ |
10 (string) dc /mmm set |
10 (string) dc /mmm set |
} ifelse |
} ifelse |
[(sm1.socket) (write) [server.fd 0 get mmm]] extension message |
[(sm1.socket) (write) [server.fd 0 get mmm]] extension message |
|
] pop |
|
popVariables |
} def |
} def |
|
|
/httpd { |
/httpd { |
{ |
{ |
startserver ; |
httpd_startserver ; |
action ; |
httpd_action ; |
stopserver ; |
httpd_stopserver ; |
(5 sleep) system |
(5 sleep) system |
} loop |
} loop |
} def |
} def |
|
|
/action { |
/httpd_action { |
|
[/in-httpd /httpd.com.old /ff /httpd.com /httpd.result] pushVariables |
|
[ |
|
(httpd:sm1 is ready) message |
{ |
{ |
/httpd.com.old ( ) def |
/httpd.com.old ( ) def |
[(sm1.socket) (select) [server.fd 0 get -1]] extension |
[(sm1.socket) (select) [server.fd 0 get -1]] extension |
|
|
httpd.result message |
httpd.result message |
(----------------------------------) message |
(----------------------------------) message |
( ) message |
( ) message |
[(Input:) (<pre> ) httpd.com (</pre>) (<br>) |
[(<title> asirweb </title> ) |
(Output:) (<pre>) |
(<font color="blue"> Input: </font> ) |
httpd.result |
(<pre> ) httpd.com (</pre>) (<br>) |
(</pre>) |
(<font color="green"> Output: </font> ) |
|
(<pre>) httpd.result (</pre>) |
] cat |
] cat |
send-page-3 exit |
send-page-3 exit |
%% [(SigIgn) 1] system_variable |
%% [(SigIgn) 1] system_variable |
|
|
} |
} |
{ } ifelse |
{ } ifelse |
} loop |
} loop |
|
] pop |
|
popVariables |
} def |
} def |
|
|
|
|
|
|
result sendln |
result sendln |
(<FORM NAME="myFORM">) sendln |
(<FORM NAME="myFORM">) sendln |
(<INPUT TYPE=submit VALUE="submit">) sendln |
(<INPUT TYPE=submit VALUE="submit">) sendln |
(<textarea name=msg rows=10 cols="62" wrap="soft"></textarea>) sendln |
(<textarea name=msg rows=10 cols="80" wrap="soft"></textarea>) sendln |
(</FORM>) sendln |
(</FORM>) sendln |
0 sendln |
0 sendln |
[(flush)] extension |
[(flush)] extension |