1 \input texinfo @c -*-texinfo-*-
3 @settitle Emacs auth-source Library @value{VERSION}
8 \e$B$3$N%U%!%$%k$O
\e(B Emacs auth-source
\e$B%i%$%V%i%j!<$r@bL@$7$^$9!#
\e(B
10 Copyright @copyright{} 2008, 2009 Free Software Foundation, Inc.
13 Permission is granted to copy, distribute and/or modify this document
14 under the terms of the GNU Free Documentation License, Version 1.3 or
15 any later version published by the Free Software Foundation; with no
16 Invariant Sections, with the Front-Cover texts being ``A GNU Manual,''
17 and with the Back-Cover Texts as in (a) below. A copy of the license
18 is included in the section entitled ``GNU Free Documentation License''
21 \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
22 \e$BBh
\e(B 1.3
\e$BHG$^$?$O$=$l0J9_$NHG$,Dj$a$k>r7o$N2<$GJ#@=!"G[I[!"$"$k$$$OJQ99$9
\e(B
23 \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
24 \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
\e(B
25 \e$B$O
\e(B Emacs
\e$B%^%K%e%"%k$N!V
\e(BGNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$H$$$&>O$K4^$^$l$F
\e(B
28 (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and
29 modify this GNU manual. Buying copies from the FSF supports it in
30 developing GNU and promoting software freedom.''
32 (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
33 \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
34 \e$B$NB%?J$r;Y1g$7$^$9!#!W
\e(B
36 This document is part of a collection distributed under the GNU Free
37 Documentation License. If you want to distribute this document
38 separately from the collection, you can do so by adding a copy of the
39 license to the document, as described in section 6 of the license.
41 \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
42 \e$B$N0lIt$G$9!#$b$7$"$J$?$,$3$NJ8=q$r<}=8Cx:nJ*$+$iJ,N%$7$FG[I[$7$?$$$H$-$O!"
\e(B
43 \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
44 \e$B$K$h$C$F!"9T$J$&$3$H$,$G$-$^$9!#
\e(B
50 * Auth-source-ja: (auth-ja). The Emacs auth-source library (Japanese).
54 @title Emacs auth-source Library
55 @author by Ted Zlatanov
57 @vskip 0pt plus 1filll
65 @top Emacs auth-source
66 \e$B$3$N%^%K%e%"%k$O
\e(B Emacs auth-source
\e$B%i%$%V%i%j!<$r@bL@$7$^$9!#
\e(B
68 \e$BMxMQ<T$NJX59$N$?$a$K!"J#?t$N%"%W%j%1!<%7%g%s$G!"
\e(B(Emacs
\e$B$^$?$O%U%!%$%k$K
\e(B
69 \e$B$"$k
\e(B)
\e$B0l$D$N@_Dj$r6&M-$9$k$?$a$N<jCJ$G$9!#
\e(B
74 * Overview:: auth-source
\e$B%i%$%V%i%j!<$N35MW
\e(B
76 * Secret Service API::
77 * Help for developers::
87 auth-source
\e$B%i%$%V%i%j!<$O!"!V%5!<%P!<L>$H%]!<%H$O$o$+$C$F$k$s$@$1$I!"%f!<
\e(B
88 \e$B%6!<L>$H%Q%9%o!<%I$O2?$@$C$1
\e(B?
\e$B!W$H$$$&@N$J$,$i$NG.Nu$JLd$$$KEz$($k$?$a$N!"
\e(B
89 Emacs
\e$B$H
\e(B Gnus
\e$BMQ$N?t$"$kC1=c$J<jCJ$N0l$D$G$9!#
\e(B
91 \e$B<B:]$K$O
\e(B auth-source
\e$B%i%$%V%i%j!<$OC1$J$k%f!<%6!<L>
\e(B (
\e$B$$$o$f$k
\e(B login)
\e$B$d
\e(B
92 \e$B%Q%9%o!<%I0J30$N$b$N$b07$&$3$H$,$G$-$^$9$,!":#F|$N
\e(B Emacs
\e$B$H
\e(B Gnus
\e$B$G$O$=
\e(B
93 \e$B$l$i
\e(B 2
\e$B$D$@$1$,;H$o$l$F$$$^$9!#F1MM$K
\e(B auth-source
\e$B%i%$%V%i%j!<$OB?$/$N5-
\e(B
94 \e$BO?7A<0!"8=:_$OEAE}E*$J
\e(B ``netrc''
\e$B7A<0
\e(B (
\e$B$3$NJ8=q$N8e$NJ}$K$"$j$^$9
\e(B)
\e$B$^$?
\e(B
95 \e$B$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r%5%]!<%H$7$^$9!#
\e(B
98 @chapter
\e$BMxMQ<T$N$?$a$N%X%k%W
\e(B
100 ``Netrc''
\e$B%U%!%$%k$O;v<B>e$NI8=`$G$9!#$=$l$i$O$3$N$h$&$K$J$C$F$$$^$9
\e(B:
102 machine @var{mymachine} login @var{myloginname} password @var{mypassword} port @var{myport}
105 machine
\e$B$O%5!<%P!<$G$9
\e(B (DNS
\e$BL>$^$?$O
\e(B IP
\e$B%"%I%l%9
\e(B)
\e$B!#
\e(B
107 \e$B%]!<%H$N;XDj$OL5$/$F$b9=$$$^$;$s!#L5$$>l9g!"
\e(Bauth-source
\e$B$O$I$s$J%]!<%H
\e(B
108 \e$B$b
\e(B OK
\e$B$J$N$@$H2r<a$7$^$9!#<B:]$N$H$3$m!"%]!<%H$O%W%m%H%3%k$NL>A0$+%]!<%H
\e(B
109 \e$BHV9f$N$I$A$i$G$bNI$$$N$G!"$b$7$=$&$7$?$$$N$J$i$P!"%]!<%H
\e(B @var{143}
\e$B$H%W
\e(B
110 \e$B%m%H%3%k
\e(B @code{imap}
\e$B$N$?$a$N9`L\$rJL!9$K;}$D$3$H$,$G$-$^$9!#$H$b$"$l!"
\e(B
111 \e$B$b$7%]!<%H$N;XDj$,MW$i$J$$>l9g$O>JN,$7$F$b9=$$$^$;$s!#
\e(B
113 login
\e$B$H
\e(B password
\e$B$O!"%5!<%P!<$KBP$7$F4J7i$K$"$J$?$N%m%0%$%s;q3J$r>ZL@$9
\e(B
114 \e$B$k$?$a$N$b$N$G$9!#
\e(B
116 ``Netrc''
\e$B%U%!%$%k$ODL>o
\e(B @code{.authinfo}
\e$B$^$?$O
\e(B @code{.netrc}
\e$B$H8F$P$l
\e(B
117 \e$B$^$9!#:#$G$O
\e(B @code{.authinfo}
\e$B$NJ}$,Ia5Z$7$F$$$k$h$&$J$N$G!"8e$G$o$+$k$h
\e(B
118 \e$B$&$K
\e(B auth-source
\e$B%i%$%V%i%j!<$O$=$l$r%G%#%U%)%k%H$K$9$k$3$H$K$h$C$F!"$3
\e(B
119 \e$B$N:.Mp$r=uD9$7$F$$$^$9!#
\e(B
121 \e$B$b$7%]!<%H$GLdBj$,$"$k$N$J$i
\e(B @code{auth-source-debug}
\e$B$r
\e(B @code{t}
\e$B$K@_Dj
\e(B
122 \e$B$7$F!"%i%$%V%i%j!<$,$I$N%]!<%H$r%A%'%C%/$7$F$$$k$+
\e(B
123 \e$B$r
\e(B @code{*Messages*}
\e$B%P%C%U%!!<$G8+$F$/$@$5$$!#F1MM$KB>$N$I$s$JLdBj$K$D
\e(B
124 \e$B$$$F$b!"2?$,%A%'%C%/$5$l$F$$$k$+$rD4$Y$k$N$,!"$"$J$?$NBh0lJb$G$9!#BhFs$N
\e(B
125 \e$B%9%F%C%W$O$b$A$m$s$=$l$K$D$$$F$N
\e(B blog
\e$B$r=q$$$F!"%3%a%s%H$G2sEz$rBT$D$3$H
\e(B
128 \e$BJQ?t
\e(B @code{auth-sources}
\e$B$r%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#$b$78E$$%P!<
\e(B
129 \e$B%8%g%s$N
\e(B Emacs
\e$B$r;H$C$F$$$k$+!"2?$+$NM}M3$N$?$a$K
\e(B auth-source
\e$B%i%$%V%i%j!<
\e(B
130 \e$B$,FI$_9~$^$l$J$$>l9g!"<!$N$b$N$,I,MW$K$J$k$G$7$g$&!#
\e(B
133 (require 'auth-source) ;;
\e$B$*$=$i$/ITMW
\e(B
134 (customize-variable 'auth-sources) ;;
\e$BG$0U!"0l2s$@$19T$J$C$F$/$@$5$$
\e(B
138 @code{auth-sources}
\e$BJQ?t$O!"8D!9$N%[%9%H$H%W%m%H%3%k$N$?$a$N
\e(B netrc
\e$B%U%!
\e(B
139 \e$B%$%k$^$?$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$N<}=8J*$,$I$3$K:_$k$+
\e(B
140 \e$B$r
\e(B auth-source
\e$B%i%$%V%i%j!<$KCN$i$;$^$9!#9%$_$K1~$8$F$I$&$K$G$b$G$-$^$9
\e(B
141 \e$B$,!"%G%#%U%)%k%H$N:G$b4J7i$J@_Dj$O<!$NDL$j$G$9
\e(B:
144 ;;;
\e$B5l%G%#%U%)%k%H
\e(B: :host
\e$B$H
\e(B :protocol
\e$B$,I,MW$@$C$?$,!"$b$O$dITMW!#
\e(B
145 (setq auth-sources '((:source "~/.authinfo.gpg" :host t :protocol t)))
146 ;;;
\e$B$[$\Ey2A$@$,!"$h$jC;$$
\e(B (
\e$B8e=R$N
\e(B fallback
\e$B$K$D$$$F$N5-=R$r;2>H
\e(B)
\e$B!#
\e(B
147 (setq auth-sources '((:source "~/.authinfo.gpg")))
150 \e$B$3$l$O!V$I$s$J%[%9%H$N$I$N%]!<%H$G$b!"$3$NC10l$N%U%!%$%k$r;H$&!W$H$$$&0U
\e(B
151 \e$BL#$G$9!#AG@2$i$7$/4JC1$G$7$g$&!#<B:]$K$O8e<T$,$9$G$K%G%#%U%)%k%H$K$J$C$F
\e(B
152 \e$B$$$k$N$G!"$=$N%U%!%$%k$,$"$l$P!"$3$l$O5!G=$7$^$9!#$=$l$,$"$k$3$H$r3N$+$a
\e(B
155 \e$BFCDj$N%[%9%H$+%W%m%H%3%k$N%(%s%H%j!<$rJ#?t
\e(B @code{auth-sources}
\e$B$KDI2C$9
\e(B
156 \e$B$k$3$H$K$h$C$F!"$=$N%[%9%H$+%W%m%H%3%k$KFC2=$7$?
\e(B netrc
\e$B%U%!%$%k$r;}$D$3
\e(B
157 \e$B$H$,$G$-$^$9!#IaDL$3$l$OI,MW$"$j$^$;$s$,!"
\e(Bnetrc
\e$B%U%!%$%k$r6&M-$7$?$jJQ$o$C
\e(B
158 \e$B$?@_Dj$,$"$k>l9g$O0UL#$,$"$k$+$b$7$l$^$;$s
\e(B (90%
\e$B$N
\e(B Emacs
\e$B%f!<%6!<$OJQ$J
\e(B
159 \e$B@_Dj$r;}$C$F$$$F!";D$j$N
\e(B 10%
\e$B$O
\e(B @emph{
\e$BK\Ev$K
\e(B}
\e$BJQ$o$C$F$$$^$9
\e(B)
\e$B!#
\e(B
161 \e$B$3$l$O!"$9$Y$F$N;2>H$K%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r;H$&Nc$G$9!#%G%U%)%k%H
\e(B
162 \e$B$N<}=8J*$r;H$$$^$9
\e(B:
165 (setq auth-sources '((:source (:secrets default))))
168 \e$B$=$7$F$3$l$O!":.:_$9$k
\e(B 2
\e$B$D$N%=!<%9$r;H$&Nc$G$9
\e(B:
171 (setq auth-sources '((:source (:secrets default) :host "myserver" :user "joe")
172 (:source "~/.authinfo.gpg")))
175 \e$B:GA1$N9gCW$O!"=i2s$NAv::$@$1$G
\e(B (
\e$B2<$+$i;O$^$k
\e(B)
\e$B=g=x$K$h$C$F7hDj$5$l$^
\e(B
176 \e$B$9
\e(B (
\e$B3FMWAG$O87L)$K>H9g$5$l$^$9
\e(B)
\e$B!#>e$NNc$G$O!"=i2s$NAv::$G%[%9
\e(B
177 \e$B%H
\e(B @code{myserver}
\e$B$X$NC10l$N9gCW$r8+$D$1$k$G$7$g$&!#
\e(BNetrc
\e$BA*Br$G$O!"$=
\e(B
178 \e$B$l$,$I$s$J%[%9%H$d%W%m%H%3%k$K$b0E$K
\e(B (@emph{fallback}
\e$B$H$7$F
\e(B)
\e$B9gCW$7$F$7
\e(B
179 \e$B$^$&$N$G!"<:GT$9$k$G$7$g$&!#
\e(B@code{auth-sources}
\e$B$K$*$1
\e(B
180 \e$B$k
\e(B @code{:host t}
\e$B$N@_DjCM$O!"
\e(B@code{:host}
\e$B$,L5$$>l9g$H0c$C$F!"=i2s$NAv
\e(B
181 \e$B::$K$*$1$k9gCW$rL\O@$s$@$b$N$G$"$k$H9MN8$5$l$^$9!#
\e(B
183 \e$B$5$F!"$b$7
\e(B ``
\e$BL$@_Dj
\e(B''
\e$B$N%[%9%H$rC5$=$&$H$9$k$H!"$=$l$O$I$s$J%=!<%9$K$bL@
\e(B
184 \e$B$i$+$J9gCW$O$7$J$$$G$7$g$&!#
\e(B2
\e$B2sL\$NAv::
\e(B (@emph{fallback}
\e$B%Q%9
\e(B)
\e$B$G$O!"$9
\e(B
185 \e$B$Y$F$N0EL[$N9gCW$rD4$Y$F!"$=$l$i$r<}=8$7$^$9!#$=$l$i$O%9%3%"IU$1$5$l!"%9
\e(B
186 \e$B%3%"$K$h$C$FJB$YJQ$($i$l$^$9!#%9%3%"$O!"9gCW$9$kL@<(E*$J%Q%i%a!<%?!<$N?t
\e(B
187 \e$BCM$K4p$E$$$F$$$^$9!#>\:Y$O
\e(B @code{auth-pick}
\e$B4X?t$r;2>H$7$F$/$@$5$$!#
\e(B
189 \e$BLuCm
\e(B fallback:
\e$B$"$kMWAG$,;XDj$5$l$F$$$J$$$?$a$K87L)$J9gCW$,5/$3$i$J$/$F
\e(B
190 \e$B$b!"$"$k5,B'$K$h$C$FA*Br$9$kL\E*J*!"$"$k$$$OA*Br$9$k$3$H!#
\e(B
193 \e$B$b$7
\e(B @code{auth-sources}
\e$B$r%+%9%?%^%$%:$7$J$$$H!"%G%#%U%)%k%H$G@83h$9$k
\e(B
194 \e$B$3$H$K$J$k$G$7$g$&!#$=$N%G%#%U%)%k%H$H$O!"$I$s$J%[%9%H$b%]!<%H$K$D$$$F
\e(B
195 \e$B$b
\e(B netrc
\e$B%U%!%$%k
\e(B @code{~/.authinfo.gpg}
\e$B$r;2>H$9$k$H$$$&$3$H$G$9!#$3$l
\e(B
196 \e$B$O0E9f2=$5$l$?%U%!%$%k$G$9!#
\e(BEPA
\e$B$r;H$($k$h$&$K$7$F$$$k>l9g$K8B$j$^$9$,!"
\e(B
197 \e$B$=$l$,6/$/?d>)$5$l$^$9!#
\e(B
202 ;;;
\e$BBP>N0E9f$,I,MW$J$i$H$F$b=EMW
\e(B
203 ;;;
\e$B$=$&$G$J$1$l$PL50UL#
\e(B
204 (setq epa-file-cache-passphrase-for-symmetric-encryption t)
207 \e$B<B:]$K;H$($k:G$b4JC1$J
\e(B netrc
\e$B9T$NNc$O!"%]!<%H$,L5$$$b$N$G$9!#
\e(B
210 machine YOURMACHINE login YOU password YOURPASSWORD
213 \e$B$3$l$O$I$NG'>Z%]!<%H$K$bBP1~$7$^$9!#4JC1$G$7$g$&
\e(B?
\e$B$G$b
\e(B SMTP
\e$B%5!<%P!<
\e(B
214 \e$B$,
\e(B IMAP
\e$B%5!<%P!<$H0[$J$k%Q%9%o!<%I$rI,MW$H$9$k$=$N%^%7%s$N%]!<%H
\e(B 433
\e$B$K
\e(B
215 \e$B$"$k$J$i$P!"$I$&$G$9$+!)
\e(B
218 machine YOURMACHINE login YOU password SMTPPASSWORD port 433
219 machine YOURMACHINE login YOU password GENERALPASSWORD
222 url-auth
\e$BG'>Z
\e(B (HTTP/HTTPS)
\e$B$N$?$a$K$O!"$3$l$r
\e(B netrc
\e$B%U%!%$%k$KCV$$$F$*$/
\e(B
223 \e$BI,MW$,$"$j$^$9
\e(B:
226 machine yourmachine.com:80 port http login testuser password testpass
229 \e$B$3$l$O
\e(B HTTP
\e$B$G@\B3$9$k$I$s$J3&LL$HG'>ZJ}<0
\e(B (basic
\e$B$^$?$O
\e(B digest)
\e$B$K$bBP
\e(B
230 \e$B1~$7$^$9!#
\e(BHTTPS
\e$B$bF1MM$K@_Dj$7$^$9!#$b$C$H$-$a:Y$+$$@)8f$,I,MW$J$i!"
\e(B
231 url-auth
\e$B$N%=!<%9%3!<%I$HJQ?t$rD4$Y$F$/$@$5$$!#
\e(B
233 Tramp
\e$B$NG'>Z$K$O$3$l$r;H$C$F$/$@$5$$
\e(B:
236 machine yourmachine.com port scp login testuser password testpass
239 \e$B%]!<%H$O
\e(B Tramp
\e$B$N@\B3J}K!$r0UL#$9$k$3$H$KCm0U$7$F$/$@$5$$!#$b$7%]!<%H$N
\e(B
240 \e$B9`$r;H$o$J$1$l$P!":G=i$NJ}$G@bL@$7$?$h$&$K!"$9$Y$F$N
\e(B Tramp
\e$B$NJ}<0$K9gCW
\e(B
241 \e$B$7$^$9!#
\e(BTramp
\e$B$K$O
\e(B 88
\e$B<oN`$N@\B3J}K!$,$"$k$N$G!"JQ$o$C$?@_Dj$,$"$k>l9g$O
\e(B
242 \e$B$3$l$,I,MW$+$b$7$l$^$;$s
\e(B (
\e$B$=$l$i$K$D$$$F$N0JA0$N%3%a%s%H$r8+$F$/$@$5$$
\e(B)
\e$B!#
\e(B
244 @node Secret Service API
245 @chapter
\e$B%7!<%/%l%C%H%5!<%S%9
\e(B API
247 TODO:
\e$B$I$&F/$/$+$r0lHLE*$K!"
\e(Bsecrets.el
\e$B$O$I$&$d$k$+!"$$$/$D$+$NNc!#
\e(B
249 @node Help for developers
250 @chapter
\e$B3+H/<T$N$?$a$N%X%k%W
\e(B
252 auth-source
\e$B%i%$%V%i%j!<$K$O!"30It$G;H$&$?$a$N4X?t$O0l$D$7$+$"$j$^$;$s!#
\e(B
254 @defun auth-source-user-or-password mode host port &optional username
255 \e$B%[%9%H
\e(B @var{host}
\e$B$*$h$S%]!<%H
\e(B @var{port}
\e$B$N$?$a$N
\e(B @var{mode}
\e$B$G7h$^$kE,
\e(B
256 \e$B@Z$JG'>Z%H!<%/%s$r<h$j9~$_$^$9!#$b$7
\e(B @var{username}
\e$B$,M?$($i$l$l$P!"F1MM
\e(B
257 \e$B$K>H9g$5$l$^$9!#
\e(B@code{auth-source-debug}
\e$B$,
\e(B @code{t}
\e$B$@$C$?$i%G%P%C%0$N
\e(B
258 \e$B$?$a$N%a%C%;!<%8$rI=<($7$^$9!#%m%0$r:N$k$?$a$N4X?t$r;H$&$K$O!"
\e(B
259 @code{auth-source-debug}
\e$B$r$=$N4X?t$K@_Dj$7$F$/$@$5$$!#EO$5$l$k%Q%i%a!<
\e(B
260 \e$B%?!<$O
\e(B @code{message}
\e$B4X?t$,<u$1<h$k$b$N$HF1$8$G$9!#$D$^$jMM<0;HMQ$NJ8;z
\e(B
261 \e$BNs$HG$0U$N%Q%i%a!<%?!<$G$9!#
\e(B
263 \e$B$b$7
\e(B @var{mode}
\e$B$,J8;zNs$N%j%9%H$J$i$P!"4X?t$OJ8;zNs$N%j%9%H
\e(B
264 \e$B$+
\e(B @code{nil}
\e$B$rJV$7$^$9
\e(B (
\e$B$=$N$?$a!"$b$&
\e(B 1
\e$B2s
\e(B netrc
\e$B%U%!%$%k$r2r@O$;$:$K!"
\e(B
265 \e$B$^$?$O%7!<%/%l%C%H%5!<%S%9
\e(B API
\e$B$r>H9g$;$:$K:Q$_$^$9
\e(B)
\e$B!#:#$N$H$3
\e(B
266 \e$B$m
\e(B ``login''
\e$B$H
\e(B ``password''
\e$B$@$1$,G'$a$i$l$F$$$^$9$,!">-Mh$O$b$C$HB?$/
\e(B
267 \e$B$N$b$N$,DI2C$5$l$k$G$7$g$&!#
\e(B
269 @var{host}
\e$B$O%[%9%HL>$NJ8;zNs$G$9!#
\e(B
271 @var{port}
\e$B$O%W%m%H%3%kL>
\e(B (
\e$BNc$($P
\e(B ``imap'')
\e$B$^$?$O%]!<%HHV9f$G$9!#%f!<%6!<
\e(B
272 \e$B$N
\e(B netrc
\e$B%U%!%$%k$K$"$k%]!<%H$KBP1~$9$kJ8;zNs$G$J$1$l$P$J$j$^$;$s!#
\e(B
274 @var{username}
\e$B$O%f!<%6!<L>$NJ8;zNs
\e(B (
\e$BNc$($P
\e(B ``joe'')
\e$B$G$9!#
\e(B
278 (setq auth (auth-source-user-or-password
279 '("login" "password")
282 (nth 0 auth) ;
\e$B%m%0%$%sL>
\e(B
283 (nth 1 auth) ;
\e$B%Q%9%o!<%I
\e(B
292 @chapter Function Index
296 @chapter Variable Index
302 @c coding: iso-2022-7bit
305 @c use-kuten-for-period: t
306 @c use-touten-for-comma: t