Synch with No Gnus (200901062211).
[elisp/gnus-doc-ja.git] / sasl-ja.texi
1 \input texinfo                  @c -*-texinfo-*-
2
3 @setfilename sasl-ja
4 @iftex
5 @firstparagraphindent insert
6 @end iftex
7
8 @set VERSION 0.2
9
10 @dircategory Emacs
11 @direntry
12 * SASL-ja: (sasl-ja).           The Emacs SASL library (Japanese).
13 @end direntry
14
15 @settitle Emacs SASL Library @value{VERSION}
16
17 @copying
18 \e$B$3$N%U%!%$%k$O\e(B Emacs SASL \e$B%i%$%V%i%j!<$r@bL@$7$^$9!#\e(B
19
20 Copyright @copyright{} 2000, 2004, 2005, 2006, 2007, 2008
21 Free Software Foundation, Inc.
22
23 @quotation
24 Permission is granted to copy, distribute and/or modify this document
25 under the terms of the GNU Free Documentation License, Version 1.3 or
26 any later version published by the Free Software Foundation; with no
27 Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
28 and with the Back-Cover Texts as in (a) below.  A copy of the license
29 is included in the section entitled ``GNU Free Documentation License''.
30
31 \e$B$3$NJ8=q$r!"%U%j!<%=%U%H%&%'%":bCDH/9T$N\e(B GNU \e$B%U%j!<J8=qMxMQ5vBz7@Ls=q\e(B
32 \e$BBh\e(B 1.3 \e$BHG$^$?$O$=$l0J9_$NHG$,Dj$a$k>r7o$N2<$GJ#@=!"G[I[!"$"$k$$$OJQ99$9\e(B
33 \e$B$k$3$H$r5v2D$7$^$9!#JQ99IT2DItJ,$O;XDj$7$^$;$s!#!H\e(BA GNU Manual\e$B!I$OI=I=;f\e(B
34 \e$B%F%-%9%H!"0J2<$N\e(B (a) \e$B$ON"I=;f%F%-%9%H$G$9!#$3$NMxMQ5vBz7@Ls=q$NJ#<L$O\e(B
35 \e$B!V\e(BGNU \e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$H$$$&>O$K4^$^$l$F$$$^$9!#\e(B
36
37 (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and
38 modify this GNU manual.  Buying copies from the FSF supports it in
39 developing GNU and promoting software freedom.''
40
41 (a) FSF \e$B$NN"I=;f%F%-%9%H\e(B:\e$B!V$"$J$?$K$O$3$N\e(B GNU Manual \e$B$rJ#@=$7$?$jJQ99$9\e(B
42 \e$B$k<+M3$,$"$j$^$9!#\e(BFSF \e$B$+$i$NJ#<L$N9XF~$O\e(B GNU \e$B$N3+H/$H%=%U%H%&%'%"$N<+M3\e(B
43 \e$B$NB%?J$r;Y1g$7$^$9!#!W\e(B
44
45 This document is part of a collection distributed under the GNU Free
46 Documentation License.  If you want to distribute this document
47 separately from the collection, you can do so by adding a copy of the
48 license to the document, as described in section 6 of the license.
49
50 \e$B$3$NJ8=q$O!V\e(BGNU \e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$K4p$E$$$FG[I[$5$l$?<}=8Cx:nJ*\e(B
51 \e$B$N0lIt$G$9!#$b$7$"$J$?$,$3$NJ8=q$r<}=8Cx:nJ*$+$iJ,N%$7$FG[I[$7$?$$$H$-$O!"\e(B
52 \e$B7@Ls=q$NBh\e(B 6 \e$B9`$K5-=R$5$l$F$$$k$h$&$K!"J8=q$K7@Ls=q$NJ#<L$rIU2C$9$k$3$H\e(B
53 \e$B$K$h$C$F!"9T$J$&$3$H$,$G$-$^$9!#\e(B
54 @end quotation
55 @end copying
56
57 @tex
58
59 @titlepage
60 @title Emacs SASL Library
61
62 @author by Daiki Ueno
63 @page
64
65 @vskip 0pt plus 1filll
66 @insertcopying
67 @end titlepage
68 @page
69
70 @end tex
71
72 @node Top
73 @top Emacs SASL
74
75 \e$B$3$N%^%K%e%"%k$O\e(B Emacs SASL \e$B%i%$%V%i%j!<$r@bL@$7$^$9!#\e(B
76
77 \e$B0[$J$k%W%m%H%3%k$r;H$&%"%W%j%1!<%7%g%s4V$G!"J#?t$NG'>Z%a%+%K%:%`$r6&M-$9\e(B
78 \e$B$k$?$a$N6&DL%$%s%?!<%U%'!<%9$G$9!#\e(B
79
80 @menu
81 * Overview::                    Emacs SASL \e$B%i%$%V%i%j!<$H$O\e(B
82 * How to use::                  \e$B%"%W%j%1!<%7%g%s$KG'>Z%5%]!<%H$rDI2C$9$k\e(B
83 * Data types::
84 * Back end drivers::            \e$BFH<+$N%I%i%$%P!<$r=q$/\e(B
85 * Index::
86 * Function Index::
87 * Variable Index::
88 @end menu
89
90 @node Overview
91 @chapter \e$BBgMW\e(B
92
93 @sc{sasl} \e$B$O\e(B @dfn{Simple Authentication and Security Layer} \e$B$NN,$G$9!#I8\e(B
94 \e$B=`$O\e(B RFC2222 \e$B$KJ8=q2=$5$l$F$$$^$9!#$3$l$O!"$5$^$6$^$J%"%W%j%1!<%7%g%s!&\e(B
95 \e$B%W%m%H%3%k$K!"G'>Z%5%]!<%H$rDI2C$9$k$?$a$N4JC1$J<jCJ$rDs6!$7$^$9!#\e(B
96
97 \e$B$3$N%i%$%V%i%j!<$N:G>e0L$N%$%s%?!<%U%'!<%9$O!"\e(BJava @sc{sasl} Application
98 Program Interface \e$B$K$h$C$F?(H/$5$l$^$7$?!#$=$l$O!"Cj>]2=$7$?0lO"$NG'>Z%a\e(B
99 \e$B%+%K%:%`$N%I%i%$%P!<$rDj5A$7$^$9!#\e(B
100
101 \e$B%P%C%/%(%s%I$N%I%i%$%P!<$O!"$J$k$Y$/G'>Z%a%+%K%:%`$KL)@\$7$F$$$k$3$H$rL\\e(B
102 \e$B;X$7$F$$$^$9!#$I$3$K$"$kDI2C$N@_Dj>pJs$K$b!"$3$N<BAu$+$i%"%/%;%9$9$k$3$H\e(B
103 \e$B$,$G$-$^$9!#\e(B
104
105 @node How to use
106 @chapter \e$B;H$$J}\e(B
107
108 (\e$B$^$@=q$+$l$F$$$^$;$s\e(B)\e$B!#\e(B
109
110 Emacs SASL \e$B%i%$%V%i%j!<$r;H$&$K$O!"%"%W%j%1!<%7%g%s!&%W%m%0%i%`$N:G=i$G!"\e(B
111 \e$B0J2<$N<0$rI>2A$7$F$/$@$5$$!#\e(B
112
113 @lisp
114 (require 'sasl)
115 @end lisp
116
117 \e$B<B9T;~$K$N$_\e(B sasl.el \e$B$,B8:_$7$F$$$k$3$H$r8!::$7$?$$$J$i$P!"Be$o$j$KI,MW\e(B
118 \e$B$J4X?t$N\e(B autoload \e$B$N@_Dj$rJB$Y$F$*$$$F$b9=$$$^$;$s!#\e(B
119
120 @node Data types
121 @chapter \e$B%G!<%?$N7?\e(B
122
123 \e$B%M%4%7%(!<%H$5$l$?%;%-%e%j%F%#!<AX$NEAAw$K;H$o$l$k;0$D$N%G!<%?$N7?$H$7$F!"\e(B
124 \e$B%a%+%K%:%`!"%/%i%$%"%s%H!&%Q%i%a!<%?!<!"$*$h$SG'>Z%9%F%C%W$,$"$j$^$9!#\e(B
125
126 @menu
127 * Mechanisms::
128 * Clients::
129 * Steps::
130 @end menu
131
132 @node Mechanisms
133 @section \e$B%a%+%K%:%`\e(B
134
135 \e$B%a%+%K%:%`\e(B (@code{sasl-mechanism} \e$B%*%V%8%'%/%H\e(B) \e$B$,!"\e(B@sc{sasl} \e$BG'>Z%a%+%K\e(B
136 \e$B%:%`$N%I%i%$%P!<$N%9%-!<%`$G$9!#\e(B
137
138 @defvar sasl-mechanisms
139 \e$B%a%+%K%:%`L>$N%j%9%H!#\e(B
140 @end defvar
141
142 @defun sasl-find-mechanism mechanisms
143 \e$BE,@Z$J%a%+%K%:%`$r<hF@$7$^$9!#\e(B@*
144 \e$B$3$N4X?t$O\e(B @var{mechanisms} \e$B$H\e(B @code{sasl-mechanisms} \e$B$rHf3S$7$F!"E,@Z\e(B
145 \e$B$J\e(B @code{sasl-mechanism} \e$B%*%V%8%'%/%H$rJV$7$^$9!#\e(B
146
147 @lisp
148 (let ((sasl-mechanisms '("CRAM-MD5" "DIGEST-MD5")))
149   (setq mechanism (sasl-find-mechanism server-supported-mechanisms)))
150 @end lisp
151 @end defun
152
153 @defun sasl-mechanism-name mechanism
154 \e$B%a%+%K%:%`$NL>A0$rJ8;zNs$GJV$7$^$9!#\e(B
155 @end defun
156
157 \e$BG'>Z%a%+%K%:%`$N%I%i%$%P!<\e(B (@ref{Back end drivers}) \e$B$r=q$-$?$1$l$P!"\e(B
158 @code{sasl-make-mechanism} \e$B$r;H$$!"\e(B@code{sasl-mechanisms} \e$B$*$h\e(B
159 \e$B$S\e(B @code{sasl-mechanism-alist} \e$B$r@5$7$/JQ99$7$F$/$@$5$$!#\e(B
160
161 @defun sasl-make-mechanism name steps
162 @code{sasl-mechanism} \e$B%*%V%8%'%/%H$r3d$jEv$F$^$9!#\e(B@*
163 \e$B$3$N4X?t$OFs$D$N%Q%i%a!<%?!<!"$9$J$o$A%a%+%K%:%`$NL>A0!"$*$h$SG'>Z$9$k$?\e(B
164 \e$B$a$N4X?t$N%j%9%H$r<u$1<h$j$^$9!#\e(B
165
166 @lisp
167 (defconst sasl-anonymous-steps
168   '(identity                            ; \e$B:G=i$O1~EzL5$7\e(B
169     sasl-anonymous-response))
170
171 (put 'sasl-anonymous 'sasl-mechanism
172      (sasl-make-mechanism "ANONYMOUS" sasl-anonymous-steps))
173 @end lisp
174 @end defun
175
176 @node Clients
177 @section \e$B%/%i%$%"%s%H\e(B
178
179 \e$B%/%i%$%"%s%H\e(B (@code{sasl-client} \e$B%*%V%8%'%/%H\e(B) \e$B$O;M$D$N%Q%i%a!<%?!<!"$9\e(B
180 \e$B$J$o$A%a%+%K%:%`!"%f!<%6!<L>!"%5!<%S%9L>!"$*$h$S%5!<%P!<L>$K$h$C$F=i4|2=\e(B
181 \e$B$5$l$^$9!#\e(B
182
183 @defun sasl-make-client mechanism name service server
184 @code{sasl-client} \e$B%*%V%8%'%/%H$rMQ0U$7$^$9!#\e(B
185 @end defun
186
187 @defun sasl-client-mechanism client
188 \e$B%/%i%$%"%s%H$N%a%+%K%:%`\e(B (@code{sasl-mechanism} \e$B%*%V%8%'%/%H\e(B) \e$B$rJV$7$^$9!#\e(B
189 @end defun
190
191 @defun sasl-client-name client
192 \e$B%/%i%$%"%s%H$NG'>ZL>$rJ8;zNs$GJV$7$^$9!#\e(B
193 @end defun
194
195 @defun sasl-client-service client
196 \e$B%/%i%$%"%s%H$N%5!<%S%9L>$rJ8;zNs$GJV$7$^$9!#\e(B
197 @end defun
198
199 @defun sasl-client-server client
200 \e$B%/%i%$%"%s%H$N%5!<%P!<L>$rJ8;zNs$GJV$7$^$9!#\e(B
201 @end defun
202
203 \e$BB0@-$N@_Dj$rDI2C$7$?$$>l9g$O!"\e(B@code{sasl-client-set-property} \e$B$r;H$C$F$/\e(B
204 \e$B$@$5$$!#\e(B
205
206 @defun sasl-client-set-property client property value
207 \e$BM?$($i$l$?B0@-$*$h$S$=$NCM$r%/%i%$%"%s%H$KDI2C$7$^$9!#\e(B
208 @end defun
209
210 @defun sasl-client-property client property
211 \e$B%/%i%$%s%H$NB0@-$NCM$rJV$7$^$9!#\e(B
212 @end defun
213
214 @defun sasl-client-set-properties client plist
215 \e$B%/%i%$%"%s%H$NB0@-$rGK2uE*$K@_Dj$7$^$9!#\e(B@*
216 \e$BBhFs0z?t$O?7$7$$%W%m%Q%F%#!<!&%j%9%H\e(B (plist) \e$B$G$9!#\e(B
217 @end defun
218
219 @defun sasl-client-properties client
220 \e$B%/%i%$%"%s%H$N@_Dj$N%W%m%Q%F%#!<!&%j%9%H$r!"$^$k$4$HJV$7$^$9!#\e(B
221 @end defun
222
223 @node Steps
224 @section \e$B%9%F%C%W\e(B
225
226 \e$B%9%F%C%W\e(B (@code{sasl-step} \e$B%*%V%8%'%/%H\e(B) \e$B$OG'>Z!V%9%F%C%W!W$NCj>]2=$G$9!#\e(B
227 \e$B$=$l$O!"1~Ez$NCM$H<!2s$NG'>Z=hM}$NF~$j8}$rJ];}$7$^$9\e(B (\e$B8e<T$O%"%/%;%9$G$-\e(B
228 \e$B$^$;$s\e(B)\e$B!#\e(B
229
230 @defun sasl-step-data step
231 @var{step} \e$B$,J];}$9$k%G!<%?$rJ8;zNs$GJV$7$^$9!#\e(B
232 @end defun
233
234 @defun sasl-step-set-data step data
235 @var{step} \e$B$K\e(B @var{data} \e$B$NJ8;zNs$r3JG<$7$^$9!#\e(B
236 @end defun
237
238 \e$B:G=i$N1~Ez$rF@$k$K$O!"BhFs0z?t$r\e(B @code{nil} \e$B$K$7$F4X\e(B
239 \e$B?t\e(B @code{sasl-next-step} \e$B$r8F$P$J$1$l$P$J$j$^$;$s!#\e(B
240
241 @lisp
242 (setq name (sasl-mechanism-name mechanism))
243 @end lisp
244
245 \e$B$3$NCJ3,$G!"\e(BSASL \e$B$NG'>Z%W%m%H%3%k$N8r49$r3+;O$9$k%3%^%s%I$rAw$k$3$H$,$G\e(B
246 \e$B$-$^$9!#Nc$G$9!#\e(B
247
248 @lisp
249 (process-send-string
250  process
251  (if (sasl-step-data step)              ; \e$B:G=i$N1~Ez\e(B
252      (format "AUTH %s %s\r\n"
253              name (base64-encode-string (sasl-step-data step) t))
254    (format "AUTH %s\r\n" name)))
255 @end lisp
256
257 \e$BG'>Z=hM}$rB3$1$k$?$a$K9T$J$o$J$1$l$P$J$i$J$$$3$H$O!"O"B3$7\e(B
258 \e$B$F\e(B @code{sasl-next-step} \e$B$r8F$V$3$H$G$9!#\e(B
259
260 @defun sasl-next-step client step
261 \e$BG'>Z%9%F%C%W$r<B9T$7$^$9!#\e(B@*
262 \e$B:G=i$O\e(B @var{step} \e$B$r\e(B @code{nil} \e$B$K@_Dj$7$J$1$l$P$J$j$^$;$s!#\e(B
263 @end defun
264
265 @node Back end drivers
266 @chapter \e$B%P%C%/%(%s%I!&%I%i%$%P!<\e(B
267
268 (\e$B$^$@=q$+$l$F$$$^$;$s\e(B)\e$B!#\e(B
269
270 @node Index
271 @chapter Index
272 @printindex cp
273
274 @node Function Index
275 @chapter Function Index
276 @printindex fn
277
278 @node Variable Index
279 @chapter Variable Index
280 @printindex vr
281
282 @summarycontents
283 @contents
284 @bye
285
286 @c Local Variables:
287 @c coding: iso-2022-7bit
288 @c fill-column: 72
289 @c mode: texinfo
290 @c use-kuten-for-period: t
291 @c use-touten-for-comma: t
292 @c End: