[BACK]Return to cgi.sm1 CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Doc

Diff for /OpenXM/src/kan96xx/Doc/cgi.sm1 between version 1.16 and 1.18

version 1.16, 2013/09/25 07:30:52 version 1.18, 2020/03/12 07:33:03
Line 1 
Line 1 
 % $OpenXM: OpenXM/src/kan96xx/Doc/cgi.sm1,v 1.15 2013/09/22 08:07:51 takayama Exp $  % $OpenXM: OpenXM/src/kan96xx/Doc/cgi.sm1,v 1.17 2013/10/11 01:08:35 takayama Exp $
 %  OpenXM/src/polymake/cgi/cgi-polymake.sh  %  OpenXM/src/polymake/cgi/cgi-polymake.sh
 %   is a shell script to call sm1/polymake as a CGI script.  %   is a shell script to call sm1/polymake as a CGI script.
 %  Override as /doPolymake {doPolymake.OoHG} def if you need.  %  Override as /doPolymake {doPolymake.OoHG} def if you need.
Line 231  def
Line 231  def
 % ------------  client side script ---------------  % ------------  client side script ---------------
 /cgiQueryPolymake.hostname (polymake.math.kobe-u.ac.jp) def  /cgiQueryPolymake.hostname (polymake.math.kobe-u.ac.jp) def
 /cgiQueryPolymake.cginame (/cgi-bin/cgi-polymake.sh) def  /cgiQueryPolymake.cginame (/cgi-bin/cgi-polymake.sh) def
 %/cgiQueryPolymake { cgiQueryPolymake.curl } def  %This host and cgi are version 2.0 polymake.  dim, ... are different with new versions.
 /cgiQueryPolymake { cgiQueryPolymake.native } def  /cgiQueryPolymake { cgiQueryPolymake.curl } def
   %/cgiQueryPolymake { cgiQueryPolymake.native } def
 /cgiQueryPolymake.curl {  /cgiQueryPolymake.curl {
   /arg2 set /arg1 set    /arg2 set /arg1 set
   [/saction /sfile /ff /ff1 /sss2 /goo /pp /pp2 /key /body /fd] pushVariables    [/saction /sfile /ff /ff1 /sss2 /goo /pp /pp2 /key /body /fd /pid] pushVariables
   [    [
     /saction arg1 def /sfile arg2 def      /saction arg1 def /sfile arg2 def
 % step1. Generate query in URL encoding.  % step1. Generate query in URL encoding.
Line 250  def
Line 251  def
   
      ff 0 get 0 get /key set       ff 0 get 0 get /key set
      ff 0 get 1 get /body set       ff 0 get 1 get /body set
   
        /pid [(getpid)] extension toString def
   
 % step 2. Call the server and get the response in pp  % step 2. Call the server and get the response in pp
      /cgi.verbose 1 def       /cgi.verbose 1 def
      (/tmp/sm1-q-cgi.txt) (w) file /fd set       [(/tmp/sm1-q-cgi.txt) pid] cat (w) file /fd set
      fd body writestring       fd body writestring
      fd closefile       fd closefile
   
 %     [(curl) (--form) [key (=@/tmp/sm1-q-cgi.txt)] cat  ff1] /ff set  %     [(curl) (--form) [key (=@/tmp/sm1-q-cgi.txt)] cat  ff1] /ff set
 %     ff  addStdoutStderr oxshell  @@@stdout /pp set  %     ff  addStdoutStderr oxshell  @@@stdout /pp set
      [(curl  --form ) [key (=@/tmp/sm1-q-cgi.txt )] cat  ff1 (>/tmp/sm1-q-cgi-out.txt)] cat /ff set       [(curl  --form ) [key (=@/tmp/sm1-q-cgi.txt) pid ( )] cat  ff1 (>/tmp/sm1-q-cgi-out.txt) pid] cat /ff set
      ff system       ff system
      [nl (/tmp/sm1-q-cgi-out.txt) pushfile] cat /pp set       [nl [(/tmp/sm1-q-cgi-out.txt) pid] cat pushfile] cat /pp set
   
   %% Store workfiles under OpenXM_tmp
        [(mkdir -p ) [(getenv) (OpenXM_tmp)] extension] cat system
        [(mv /tmp/sm1-q-cgi.txt) pid ( ) [(getenv) (OpenXM_tmp)] extension] cat system
        [(mv /tmp/sm1-q-cgi-out.txt) pid ( ) [(getenv) (OpenXM_tmp)] extension] cat system
   
      cgi.verbose { pp message } {  } ifelse       cgi.verbose { pp message } {  } ifelse
      [(cgiHttpToKeyValuePair) pp] extension /pp2 set       [(cgiHttpToKeyValuePair) pp] extension /pp2 set
      pp2 message       pp2 message
Line 337  def
Line 347  def
 %/polymake.start { polymake.start.OoHG } def  %/polymake.start { polymake.start.OoHG } def
   
 [(doPolymake.OoHG)  [(doPolymake.OoHG)
 [(It first looks for local polymake. If there is, it calls the local polymake.)  [(doPolymake.local calls the local polymake.)
  (If not, it calls http://polymake.math.kobe-u.ac.jp/cgi-bin/cgi-polymake.sh)   (This function calls http://polymake.math.kobe-u.ac.jp/cgi-bin/cgi-polymake.sh)
  (to make a computation in polymake.)   (to make a computation in polymake.)
    (The host name and the cgi name are set to the variable)
    (   cgiQueryPolymake.hostname  and cgiQueryPolymake.cginame)
  (See doPolymake for the syntax. doPolymake.OoHG may overrides doPolymake.)   (See doPolymake for the syntax. doPolymake.OoHG may overrides doPolymake.)
  (If you use curl to call the server execute)   (If you use curl to call the server execute)
  (   usePolymake.OoHG.curl)   (   usePolymake.OoHG.curl)
Line 434  def
Line 446  def
 } def  } def
   
 /usePolymake.OoHG.curl {  /usePolymake.OoHG.curl {
     [(which) (curl)] oxshell tag 0 eq {
        (Error in usePolymake.OoHG.curl: curl is not found.) error
     } { } ifelse
   /doPolymake { doPolymake.OoHG } def    /doPolymake { doPolymake.OoHG } def
   /polymake.start { polymake.start.OoHG } def    /polymake.start { polymake.start.OoHG } def
   /cgiQueryPolymake { cgiQueryPolymake.curl } def    /cgiQueryPolymake { cgiQueryPolymake.curl } def
 } def  } def
   
   [(usePolymake.local)
   [(doPolymake calls local polymake)
   ]] putUsages
   
 [(usePolymake.OoHG.native)  [(usePolymake.OoHG.native)
 [(doPolymake = doPolymake.OoHG with cgiQueryPolymake.native)  [(doPolymake = doPolymake.OoHG with cgiQueryPolymake.native)
  (cf. doPolymake.OoHG)   (cf. doPolymake.OoHG)
    (hostname is set in cgiQueryPolymake.hostname)
    (cginame is set in  cgiQueryPolymake.cginame)
 ]] putUsages  ]] putUsages
   
 [(usePolymake.OoHG.curl)  [(usePolymake.OoHG.curl)
Line 449  def
Line 470  def
  (It should be used when cgiQueryPolymake.native does not work)   (It should be used when cgiQueryPolymake.native does not work)
  (over, e.g., a reverse proxy.)   (over, e.g., a reverse proxy.)
  (The command curl is required.  cf. cgi.verbose, doPolymake.OoHG)   (The command curl is required.  cf. cgi.verbose, doPolymake.OoHG)
    (hostname is set in cgiQueryPolymake.hostname)
    (cginame is set in  cgiQueryPolymake.cginame)
 ]] putUsages  ]] putUsages
   
   

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.18

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>