[BACK]Return to OX-RFC-103.oxw CVS log [TXT][DIR] Up to [local] / OpenXM / doc / OpenXM-specs

Annotation of OpenXM/doc/OpenXM-specs/OX-RFC-103.oxw, Revision 1.4

1.4     ! takayama    1: % $OpenXM: OpenXM/doc/OpenXM-specs/OX-RFC-103.oxw,v 1.3 2003/12/10 23:22:52 takayama Exp $
1.1       takayama    2: %% OXWEAVE=${OpenXM_HOME}/bin/oxweave --recursive --plain
                      3: %% ${OXWEAVE} C ja <oxshell.oxw >>oxshell-ja.tex
                      4: //&ja \documentclass{jarticle}
                      5: //&en \documentclass{article}
                      6:
                      7: //&ja \title{OpenXM RFC 103 draft (RFC 100 $BDI2C(B)}
                      8: //&en \title{OpenXM RFC 103 draft (RFC 100 supplement}
                      9: //&C \author{OpenXM Committers}
1.4     ! takayama   10: //&C \date{December 9, 2003, September 18, 2004}
1.1       takayama   11: //&C \newtheorem{example}{Example}
                     12: \usepackage{html}
                     13:
                     14: \begin{document}
                     15: \maketitle
                     16:
                     17: /*&ja
                     18:  $B$3$N(B RFC $B$O(B OpenXM RFC 100 ($B$*$h$S(B 101) $B$N<BAu$K$h$jL@$i$+$K$J$C$?<o!9$NLdBjE@$r$b$H$K(B
                     19:  RFC 100 $B%W%m%H%3%k$X$N4v$D$+$NDI2C$rDs0F$9$k(B.
                     20: */
                     21:
1.3       takayama   22: //&ja \section{$BCfCG$*$h$SJQ?t$NEAGE(B}
                     23: //&en \section{Propagation of an interruption and a value of a variable}
                     24:
                     25: //&ja \subsection{$BCfCG(B}
                     26: //&en \subsection{Interruption}
1.1       takayama   27:
1.2       takayama   28: /*&ja
                     29: OX RFC 103 $B$G$O(B,
                     30: $B%(%s%8%s$O(B OX RFC 100 $B$KDj5A$5$l$?CfCG=hM}$r40N;$7$?$N$A(B,
                     31: $B$5$i$K<!$N=hM}$r$*$3$J$o$J$$$H$$$1$J$$(B. \\
                     32: $B>e0U2<C#$NCfCG=hM}(B:
                     33: \begin{enumerate}
                     34: \item $B<+J,$N;R6!%W%m%;%9$r$9$Y$F%j%9%H$9$k(B
                     35:   ($B$?$H$($P(B asir $B$N>l9g$O(B {\tt ox\_get\_serverinfo() }).
                     36: \item $B;R6!%W%m%;%9$K=gHV$K(B OpenXM-RFC 100 $B$NCfCG%a%C%;!<%8$rAw$k(B.
                     37: \end{enumerate}
                     38: */
                     39:
                     40: /*&en
                     41: Engines complient to OX RFC 103 must execute the following
                     42: procedures after finishing the interruption exception
                     43: defined by OX RFC 100.
                     44: \begin{enumerate}
                     45: \item List all the child processes.
                     46:   (For example, use the function {\tt ox\_get\_serverinfo() } in case of asir).
                     47: \item Send all the child processes the interruption message defined
                     48:    OX RFC 100.
                     49: \end{enumerate}
                     50: */
1.1       takayama   51:
1.3       takayama   52: //&ja \subsection{$B%5!<%PLZ$NBg0hJQ?t(B}
                     53: //&en \subsection{Global variable of the tree of the servers}
                     54:
                     55: //&ja OX RFC 103 $BBP1~$N%(%s%8%s$O%(%s%8%s4X?t(B
                     56: /*&en
                     57: The engines complient to OX RFC 103 implement the engine function
                     58: */
                     59: /*&C
                     60: \begin{center}
                     61: {\tt ox103\_set\_shared\_variable(} CMO string {\tt Name}, CMO object {\tt
                     62: value}{\tt )}
                     63: \end{center}
                     64: */
                     65: /*&ja
                     66: $B$r<BAu$7$F$$$k(B.
                     67: $B$3$N4X?t$,8F$P$l$k$H(B, $B%(%s%8%s%9%?%C%/%^%7%s$NJQ?t(B {\tt Name} $B$KCM(B
                     68: {\tt value} $B$,@_Dj$5$l(B,
                     69: $B$5$i$K;R$I$b$N%W%m%;%9$9$Y$F$N%(%s%8%s4X?t(B
                     70:  {\tt ox103\_set\_shared\_variable}
                     71: $B$r$h$V(B.
                     72: */
                     73: /*&en
                     74: When this function is called,
                     75: the value {\tt value} is assigned to
                     76: the variable {\tt Name} of the engine stackmachine
                     77: and the engine calls the function
                     78:  {\tt ox103\_set\_shared\_variable}
                     79: of all the child processes with the same arguments.
                     80: */
                     81:
                     82: /*&ja
                     83: $B$?$H$($P(B,
                     84: $B$3$N5!G=$O(B asir-contrib $B$K$*$$$FJQ?t(B {\tt Xm\_noX} (ox server $BMQ$N(B debug
                     85: window $B$rI=<($9$k$+$7$J$$$+$N%U%i%0(B) $B$NCM$rF1Js$9$k$N$KMQ$$$F$$$k(B.
                     86: */
                     87: /*&en
                     88: For example,
                     89: this protocol is used in the asir-contrib
                     90: to broad cast the value of the variable {\tt Xm\_noX},
                     91: which is the flag of hiding the debug window of an ox server.
                     92: */
                     93:
                     94:
1.1       takayama   95: //&ja \section{$B?7$7$$(B CMO}
                     96: //&en \section{New CMO}
                     97:
                     98: //&ja \section{$B%U%!%$%k$X$NFI$_=q$-(B}
                     99: //&en \section{File IO}
                    100:
                    101: //&ja \section{$B%(%s%8%sG'>Z<jB3$-(B}
                    102: //&en \section{Engine authentication}
                    103:
1.2       takayama  104: /*&ja
                    105: $B%P%$%H%*!<%@!<$r7h$a$k$?$a$N>pJs8r49(B (OX-RFC 100 $B;2>H(B) $B$NA0$K(B
                    106: $B%(%s%8%sG'>Z<jB3$-$r$*$3$J$&(B.
1.4     ! takayama  107:
        !           108: $BG'>Z%W%m%H%3%k$K$O2<$N?^$N(B step 1, step 2, step 3 $B$G$"$k(B.
        !           109:
        !           110: \begin{verbatim}
        !           111:
        !           112:  client                                            server
        !           113:
        !           114:      ---------------- step 1 ----------------------->
        !           115:      ssh $B$K$h$k(B server $B$X$N(B login.
        !           116:      controle server, engine server $B$H$N@\B3$r3NN)$9$k$?$a$N(B
        !           117:      $B%]!<%HHV9f$*$h$S(B      -control= ... , -data=...
        !           118:      $BG'>ZJ}K!$*$h$S(B        -authtype=NONE | <<oneTimePassword>>
        !           119:      $BG'>Z%Q%9%o!<%I(B        -passControl=... , -passData=...
        !           120:      $B$bAw?.$5$l$k(B.
        !           121:      $BG'>Z%Q%9%o!<%I$N0E9f(B  -authEncoding=<<NONE>> | file | RSA
        !           122:      $B2=J}K!$N;XDj(B.
        !           123:      << >> $B$O(B src/kxx/ox $B$NI8=`CM(B
        !           124:
        !           125:
        !           126:     <----------------  step 2 -------------------------->
        !           127:        -reverse $B$N>l9g$O(B <--- $B$N8~$-$K(B TCP/IP $B@\B3$,3NN)$5$l$k(B.
        !           128:        $B$=$&$G$J$$$H$-$O(B ---> $B$N8~$-$K(B TCP/IP $B@\B3$,3NN)$5$l$k(B.
        !           129:
        !           130:     <----------------  step 3 -------------------------->
        !           131:        -authtype=oneTimePassword $B$N;~(B.
        !           132:        connect $B$7$?B&$,(B accept $B$7$?B&$X(B oneTimePassword $B$rAw$k(B.
        !           133:        $BKvHx$N(B 0 $B$rAw?.$9$k(B.
        !           134:
        !           135:     $B0J2<(B launcher $B$N;E;v$O=*N;$7$F(B, engine $B$H(B control $B$K@)8f$,0\$k(B.
        !           136:     <----------------  step 4 -------------------------->
        !           137:        engine $B$N(B byte order $B$r@_Dj(B.
        !           138:
        !           139:     <---------------------------------------------------->
        !           140:        OpenXM $B$N%Q%1%C%H8r49(B
        !           141:
        !           142: \end{verbatim}
        !           143: */
        !           144:
        !           145: /*&ja
        !           146:
        !           147: \begin{verbatim}
        !           148:
        !           149:  authtype $B$O(B NONE $B$+(B oneTimePassword $B$G$"$k(B.
        !           150:  oneTimePassword $B$O1Q?t;z$G9=@.$5$l$?Ns$G$"$k(B.
        !           151:  oneTimePassword $B$O>o$K%/%i%$%"%s%H$G@8@.$5$l$F(B, $B$J$s$i$+$NJ}K!$G%5!<%P$K(B
        !           152:  $BG[Aw$5$l$k(B.  connect $BB&$,(B oneTimePassword $B$rJ?J8$G(B accept $BB&$KAw?.$7$F(B
        !           153:  $BG'>Z$,=*N;$9$k(B.
        !           154:
        !           155:  authEncoding $B$G(B oneTimePassword $B$NG[AwJ}K!$r5,Dj$9$k(B.
        !           156:  authEncoding $B$O(B NONE $B$+(B file $B$+(B RSA $B$G$"$k(B.
        !           157:
        !           158:  authEncoding=NONE $B$,A*Br$5$l$?>l9g(B oneTimePassword $B$NG[Aw$KFCJL$JJ}K!$rMxMQ(B
        !           159:  $B$7$J$$(B.
        !           160:  NONE $B$rA*Br$7$?>l9g(B, $B8=:_$N(B ox launcher $B$N<BAu$G$O$?$H$($P(B -passControl
        !           161:  $B$N$"$H$K(B oneTimePassword $B$,@8$N7A$G8=$l$k$3$H$H$J$k(B.
        !           162:  Unix $B$N>l9g$3$l$O(B command $B$N0z?t$G$"$j(B client $B$H(B server $B$NDL?.O)$,(B
        !           163:  ssh $BEy$G0E9f2=$5$l$F$$$?$H$9$k$H%M%C%H%o!<%/%f!<%6$OGA$-$_$k$3$H$O$G$-$J$$$,(B,
        !           164:  $BF10l5!$N%f!<%6$O8+$k$3$H$,2DG=$G$"$k(B.
        !           165:  $B$7$?$,$C$F(B NONE $B$NA*Br$,2DG=$G$"$k$N$O(B client $B$*$h$S(B server $B$,==J,?.Mj(B
        !           166:  $B$G$-$k$H$-$K8B$k(B.
        !           167:
        !           168: \end{verbatim}
        !           169: */
        !           170:
        !           171: /*&ja
        !           172:
        !           173: authEncoding=file $B$N>l9g(B.
        !           174:
        !           175: \begin{verbatim}
        !           176:  authEncoding=file $B$rA*Br$7$?>l9g$O(B oneTimePassword $B$OJL$KMQ0U$5$l$?0BA4$J(B
        !           177:  $BDL?.7PO)(B($B$?$H$($P(B scp) $B$rMQ$$$F(B file $B$H$7$FG[Aw$5$l$k(B.
        !           178:  oneTimePassword $B$,3JG<$5$l$?(B file $BL>$r(B -passControl, -passData $B0z?t$GEO$9(B.
        !           179:  file $BL>$O(B $HOME/.openxm/tmp.otp/ $B$+$i$NAjBP%Q%9L>$G$"$k(B.
        !           180:  $B%Q%9$N6h@Z$jJ8;z$O(B windows $B$G$b(B / $B$rMQ$$$k(B.
        !           181:  $B%/%i%$%"%s%H$O<!$N5,B'$G%U%!%$%kL>$r@8@.$9$k(B.
        !           182:  $B%U%!%$%kL>$K$O1Q?t;z$H(B . -  _ $B$NMxMQ$7$+$f$k$5$l$J$$(B. $B%U%!%$%kL>$O<!$N7A<0(B
        !           183:  $B$G$"$k(B.
        !           184:
        !           185:     clientname-servernameUidPidSerial-time.pass
        !           186:
        !           187:  $B$3$3$G(B time $B$O(B time(2) $B$NLa$jCM$r?t;zJ8;zNs$KJQ49$7$?7A<0$G$"$k(B.
        !           188:  oneTimePassword $B$N@8@.;~9o$r@Z$j>e$2$F(B 10 $BJ,Kh$N@5;~$KJQ49$7$?$b$N$H$9$k(B.
        !           189:  servernameUidPidSerial $B$O(B client $B$,(B oneTimePassword $B$r@8@.$7$F$+$i(B
        !           190:  10 $BJ,4V(B, $B%/%i%$%"%s%H%7%9%F%`$G9b$$3NN($G0l0UE*$G$"$k$3$H$,J]>Z$5$l$F$$$k(B
        !           191:  $BJ8;zNs$J$i$J$s$G$b$h$$(B.
        !           192:
        !           193:  $BNc(B
        !           194:       client                                            server
        !           195:
        !           196:      oneTimePassword 1342546 $B$r3JG<$7$?%U%!%$%k(B
        !           197:      yama.openxm.org-00001-2312123123.pass   $B$r@8@.(B
        !           198:
        !           199:      oneTimePassword 89123888 $B$r3JG<$7$?%U%!%$%k(B
        !           200:      yama.openxm.org-00002-2312123124.pass   $B$r@8@.(B
        !           201:      ----------------------------------------------------->
        !           202:         $B>e$NFs$D$N%U%!%$%k$r0BA4$JDL?.O)$rMQ$$$FG[Aw$9$k(B.
        !           203:        ($B$?$H$($P(B scp )
        !           204:
        !           205:      ----------------------------------------------------->
        !           206:           ox -authtype oneTimePassword
        !           207:              -authEncoding file
        !           208:              -passControl yama.openxm.org-00001-2312123123.pass
        !           209:              -passData yama.openxm.org-00002-2312123124.pass
        !           210:
        !           211:
        !           212:     <----------------  step 2 -------------------------->
        !           213:        -reverse $B$N>l9g$O(B <--- $B$N8~$-$K(B TCP/IP $B@\B3$,3NN)$5$l$k(B.
        !           214:        $B$=$&$G$J$$$H$-$O(B ---> $B$N8~$-$K(B TCP/IP $B@\B3$,3NN)$5$l$k(B.
        !           215:
        !           216:     <----------------  step 3 -------------------------->
        !           217:        connect $B$7$?B&$,(B accept $B$7$?B&$X(B oneTimePassword $B$rJ?J8$G$*$/$k(B.
        !           218:
        !           219:
        !           220:
        !           221:      oneTimePassword 1342546 $B$r3JG<$7$?%U%!%$%k(B
        !           222:      yama.openxm.org-00001-2312123123.pass   $B$r(B server $B$K@8@.$9$k$?$a$K(B
        !           223:     $B$?$H$($P(B sendStringAsAfile(char *servername, char *serveruser,
        !           224:                   char *filename, char *otp);
        !           225:     $B$N$h$&$J(B API $B$rMQ0U$7$F$*$/$H$h$$$G$"$m$&(B.
        !           226:
        !           227:
        !           228: \end{verbatim}
        !           229:
        !           230: */
        !           231:
        !           232: /*&ja
        !           233:
        !           234: authEncoding=RSA $B$N>l9g(B.
        !           235:
        !           236: \begin{verbatim}
        !           237: RSA $B$NHkL)80(B, $B8x3+80$r3JG<$9$k%U%!%$%kL>$O0J2<$N$H$*$j(B.
        !           238: $HOME/.openxm/rsa/ox103-rsa0-identity       ($BHkL)80$r$J$i$Y$?$b$N(B)
        !           239: $HOME/.openxm/rsa/ox103-rsa0-identity.pub   ($B8x3+80(B: $B$3$N7A<0$G$OMxMQ$5$l$:(B)
        !           240: $HOME/.openxm/rsa/ox103-rsa0-authorizedkeys ($B8x3+80$r$J$i$Y$?$b$N(B)
        !           241:
        !           242: $B80%U%!%$%k$O<!$N%G!<%?$r6uGr$G6h@Z$C$FJB$Y$?$b$N$G$"$k(B.
        !           243:   user$B<1JL;R(B    $B80(B($B#1#0?J?t;zNs(B)    RSA$B%U%)!<%^%C%H<1JL;R(B(optional)
        !           244: $B%3%a%s%H9T$O(B # $B$G;O$^$k(B.
        !           245:
        !           246: $B%U%)!<%^%C%H<1JL;R$,(B 0 $B$N>l9g$O(B
        !           247: x --> x^65537 $B$rMQ$$(B, 128 byte (1024 bit) $B$E$D%G!<%?$r6h@Z$C$F=hM}$9$k(B
        !           248: RSA $B$rMQ$$$k(B.  0 $B$O<B83MQ$G$"$k(B.
        !           249:
        !           250: Todo: $B80$N3JG<J}K!(B, $B%G!<%?6h@Z$j$NJ}K!$J$I2DG=$J8B$j(B
        !           251: RFC3447 $B$K=`5r$9$k$h$&$KJQ99$;$h(B.  $B=`5r$,40N;$7$?$i(B -rsa0- $B$r(B
        !           252: -rsa- $B$HJQ99$9$k(B.
        !           253:
        !           254: $BNc(B:
        !           255:
        !           256: client  $BB&(B
        !           257:
        !           258:   ox103-rsa0-identity
        !           259:      # client $BB&$,;H$&HkL)80(B
        !           260:      takayama@client.math.kobe-u.ac.jp  1234523....
        !           261:
        !           262:
        !           263:   ox103-rsa0-authorizedkeys
        !           264:      @ server $BB&$,;H$&HkL)80$KBP1~$9$k8x3+80(B
        !           265:      takayama@server.math.kobe-u.ac.jp  8989898....
        !           266:
        !           267: server $BB&(B
        !           268:   ox103-rsa0-identity
        !           269:      # server $BB&$,;H$&HkL)80(B
        !           270:      takayama@server.math.kobe-u.ac.jp  8781234....
        !           271:
        !           272:   ox103-rsa0-authorizedkeys
        !           273:      @ client $BB&$,;H$&HkL)80$KBP1~$9$k8x3+80(B
        !           274:      takayama@client.math.kobe-u.ac.jp  89891....
        !           275:
        !           276: authEncoding=RSA $B$rMxMQ$9$k>l9g$O$3$l$i$N80$rE,@Z$K(B .openxm/rsa $B$N2<$K(B
        !           277: $BCV$+$J$$$H$$$1$J$$(B.  .openxm/rsa $B$N(B permission $B$O(B rwx------ $B$G$"$k$3$H(B.
        !           278:
        !           279: $BCm0U(B: $BHkL)80$r@8$G3JG<$7$J$$>l9g%U%!%$%kL>$r(B ox103-rsa2-* $BEy$HJQ99$9$k(B
        !           280: $BM=Dj(B.  RSA encoding $BJ}K!$O?t;z$NBg$-$$$b$N$+$i=gHV$K%5!<%A$7$F$$$/$b$N$H$9$k(B.
        !           281:
        !           282: authEncoding=RSA $B$N>l9g(B -passData $B$*$h$S(B -passControl $B$O(B
        !           283: oneTimePassword ($BJ8;zNs(B) $B$r(B bit data $B$H$_$F(B rsa $B$G0E9f2=$7$?$b$N$r(B
        !           284: URL encoding $B$7$?7A$GAw$k(B.
        !           285:
        !           286: oneTimePassword $B$N<~4|$O==J,Bg$-$/$J$$$H$$$1$J$$(B.
        !           287: $B0lG/$O(B 31536000 $BIC$G$"$k(B. 100 $BG/$O(B 3153600000 $BIC(B (10 $B7e(B) $B$G$"$k(B.
        !           288: oneTimePassword $B$O?t;z$N>l9g(B 10 $B7e0J>e$G$"$k$3$H$,K>$^$7$$(B.
        !           289:
        !           290: \end{verbatim}
1.2       takayama  291: */
                    292:
1.1       takayama  293: //&ja \section{$B9W8%<T(B}
                    294: //&en \section{Contributors}
1.2       takayama  295:
                    296: /*&ja
1.3       takayama  297: $BCfCG$*$h$SJQ?t$NEAGE$K$D$$$F$O9b;3$,@_7W(B, asir $B$*$h$S(B kan/sm1 $B$X$N<BAu(B, $BI>2A$r$*$3$J$C$?(B.
1.2       takayama  298: ({\tt OpenXM/src/asir-contrib/packages/src/oxrfc103.rr},
                    299:  {\tt OpenXM/src/kan96xx/Doc/oxrfc103.sm1}
                    300:  $B$r$_$h(B).
1.3       takayama  301: */
                    302:
                    303: /*&ja
                    304: $B9TNs(B, $B%Y%/%H%k$N(B CMO $B$O(B NTL $B$N%5!<%P2=$r%F%9%H%1!<%9$H$7$F(B
                    305: $B4d:,$,@_7W(B, $B<BAu(B, $BI>2A$r9T$C$?(B.
1.4     ! takayama  306: RSA $B$N%-!<@8@.$N(B OpenXM $B$X$N<BAu$O4d:,$,$*$3$J$C$?(B.
1.2       takayama  307: */
1.1       takayama  308:
                    309: \end{document}

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