version 1.2, 2001/04/21 06:38:37 |
version 1.3, 2001/04/21 08:18:03 |
|
|
%% $OpenXM: OpenXM/src/kan96xx/Doc/httpd-asir.sm1,v 1.1 2001/04/20 13:38:31 takayama Exp $ |
%% $OpenXM: OpenXM/src/kan96xx/Doc/httpd-asir.sm1,v 1.2 2001/04/21 06:38:37 takayama Exp $ |
%% http server by sm1 |
%% http server by sm1 |
|
|
/httpd.port 1200 def |
/httpd.port 1200 def |
|
|
[(sm1.socket) (close) server.fd ] extension message |
[(sm1.socket) (close) server.fd ] extension message |
} def |
} def |
|
|
/send { |
/send_packet { |
/arg1 set |
/arg1 set |
[(sm1.socket) (write) [server.fd 0 get arg1]] extension message |
[(sm1.socket) (write) [server.fd 0 get arg1]] extension message |
} def |
} def |
|
|
} def |
} def |
|
|
/httpd { |
/httpd { |
|
/httpd.serial 1 def |
|
/httpd.history [ ] def |
{ |
{ |
httpd_startserver ; |
httpd_startserver ; |
httpd_action ; |
httpd_action ; |
httpd_stopserver ; |
httpd_stopserver ; |
(5 sleep) system |
(5 sleep) system |
|
httpd.serial 1 add /httpd.serial set |
} loop |
} loop |
} def |
} def |
|
|
/httpd_action { |
/httpd_action { |
[/in-httpd /httpd.com.old /ff /httpd.com /httpd.result] pushVariables |
[/in-httpd /httpd.com.old /ff /httpd.com /httpd.result |
|
] pushVariables |
[ |
[ |
(httpd:sm1 is ready) message |
(httpd:sm1 is ready) message |
{ |
{ |
|
|
httpd.com message |
httpd.com message |
(------------ end ----------------------) message |
(------------ end ----------------------) message |
( ) message |
( ) message |
oxasir.ccc |
httpd.com metaCommand { |
[(if (1) {) httpd.com (};)] cat |
/httpd.history httpd.history httpd.com append def |
oxexecutestring ; |
oxasir.ccc |
oxasir.ccc oxpopstring /httpd.result set |
[(if (1) {) httpd.com (};)] cat |
/httpd.com.old httpd.com def |
oxexecutestring ; |
(------------- result -------------) message |
oxasir.ccc oxpopstring /httpd.result set |
httpd.result message |
/httpd.com.old httpd.com def |
(----------------------------------) message |
(------------- result -------------) message |
( ) message |
httpd.result message |
[(<title> asirweb </title> ) |
(----------------------------------) message |
(<font color="blue"> Input: </font> ) |
( ) message |
(<pre> ) httpd.com (</pre>) (<br>) |
[(<title> asirweb </title> ) |
(<font color="green"> Output: </font> ) |
(<font color="blue"> Input-) httpd.serial toString |
(<pre>) httpd.result (</pre>) |
(: </font> ) |
] cat |
(<pre> ) httpd.com (</pre>) (<br>) |
send-page-3 exit |
(<font color="green"> Output-) httpd.serial toString |
%% [(SigIgn) 1] system_variable |
(: </font> ) |
|
(<pre>) httpd.result (</pre>) |
|
] cat |
|
send-page-3 exit |
|
} { } ifelse |
} ifelse |
} ifelse |
} |
} |
{ } ifelse |
{ } ifelse |
|
|
} def |
} def |
|
|
|
|
/send-page-1 { |
/send-page-bye { |
(HTTP/0.9 200 OK) sendln |
(HTTP/0.9 200 OK) sendln |
%% (Date: Sun, 18 Mar 2001 02:54:50 GMT) sendln |
%% (Date: Sun, 18 Mar 2001 02:54:50 GMT) sendln |
%% (Server: sm1/0.1 (Unix)) sendln |
%% (Server: sm1/0.1 (Unix)) sendln |
|
|
%% (Accept-Ranges: bytes) sendln |
%% (Accept-Ranges: bytes) sendln |
%% (Content-Length: 10) sendln |
%% (Content-Length: 10) sendln |
(Connection: close) sendln |
(Connection: close) sendln |
(Content-Type: text/plain) sendln |
% (Content-Type: text/plain) sendln |
|
(Content-Type: text/html) sendln |
0 sendln |
0 sendln |
(HOGE HOGE!) sendln |
(<html>) sendln |
|
(Shutdown the engine. <br>) sendln |
|
(See you! <a href="http://www.openxm.org"> asirweb </a>) sendln |
|
(</html>) sendln |
0 sendln |
0 sendln |
[(flush)] extension |
[(flush)] extension |
} def |
} def |
|
|
(<INPUT TYPE=submit VALUE="submit">) sendln |
(<INPUT TYPE=submit VALUE="submit">) sendln |
(<textarea name=msg rows=10 cols="80" wrap="soft"></textarea>) sendln |
(<textarea name=msg rows=10 cols="80" wrap="soft"></textarea>) sendln |
(</FORM>) sendln |
(</FORM>) sendln |
|
send-menu-1 |
0 sendln |
0 sendln |
[(flush)] extension |
[(flush)] extension |
] pop |
] pop |
popVariables |
popVariables |
} def |
} def |
|
|
|
/httpd.asirman |
|
("http://www.math.sci.kobe-u.ac.jp/OpenXM/1.1.3/doc/asir2000/html-jp/man_toc.html") |
|
def |
|
/httpd.asirman.index |
|
("http://www.math.sci.kobe-u.ac.jp/OpenXM/1.1.3/doc/asir2000/html-jp/man_262.html#SEC262") |
|
def |
|
/send-menu-1 { |
|
|
|
[$<a href="http://localhost:$ httpd.port toString |
|
$/?msg=httpdAsirMeta+quit"> QUIT </a>, $ |
|
] cat sendln |
|
|
|
[(<font color="red"> |
|
<a href=) httpd.asirman (> AsirManual (Ja) </a> </font>, )] cat sendln |
|
[(<font color="purple"> |
|
<a href=) httpd.asirman.index (> Index (Ja) </a> </font>, )] cat sendln |
|
(<font color="blue"> |
|
<a href="http://www.math.sci.kobe-u.ac.jp/~taka/asir-book-html/main"> Intro (Ja) </a> </font>, ) sendln |
|
} def |
|
|
/stopclient { |
/stopclient { |
[(sm1.socket) (close) [client.fdAndPort 0 get] ] extension message |
[(sm1.socket) (close) [client.fdAndPort 0 get] ] extension message |
} def |
} def |
|
|
} loop |
} loop |
s j carN /s set |
s j carN /s set |
s { (string) dc } map cat /arg1 set |
s { (string) dc } map cat /arg1 set |
|
] pop |
|
popVariables |
|
arg1 |
|
} def |
|
|
|
/metaCommand { |
|
/arg1 set |
|
[/in-metaCommand /msg /result] pushVariables |
|
[ |
|
/msg arg1 def |
|
/result 1 def |
|
msg (httpdAsirMeta quit) eq { |
|
send-page-bye |
|
quit |
|
/result 0 def |
|
} { } ifelse |
|
/arg1 result def |
] pop |
] pop |
popVariables |
popVariables |
arg1 |
arg1 |
} def |
|
|
|
|
} def |