upstream commit

Add an AddKeysToAgent client option which can be set to
 'yes', 'no', 'ask', or 'confirm', and defaults to 'no'.  When enabled, a
 private key that is used during authentication will be added to ssh-agent if
 it is running (with confirmation enabled if set to 'confirm').

Initial version from Joachim Schipper many years ago.

ok markus@

Upstream-ID: a680db2248e8064ec55f8be72d539458c987d5f4
9 files changed
tree: 493beb15e73f9b57f42244e8c927bdf75480188f
  1. contrib/
  2. openbsd-compat/
  3. regress/
  4. scard/
  5. .cvsignore
  6. aclocal.m4
  7. addrmatch.c
  8. atomicio.c
  9. atomicio.h
  10. audit-bsm.c
  11. audit-linux.c
  12. audit.c
  13. audit.h
  14. auth-bsdauth.c
  15. auth-chall.c
  16. auth-krb5.c
  17. auth-options.c
  18. auth-options.h
  19. auth-pam.c
  20. auth-pam.h
  21. auth-passwd.c
  22. auth-rh-rsa.c
  23. auth-rhosts.c
  24. auth-rsa.c
  25. auth-shadow.c
  26. auth-sia.c
  27. auth-sia.h
  28. auth-skey.c
  29. auth.c
  30. auth.h
  31. auth1.c
  32. auth2-chall.c
  33. auth2-gss.c
  34. auth2-hostbased.c
  35. auth2-kbdint.c
  36. auth2-none.c
  37. auth2-passwd.c
  38. auth2-pubkey.c
  39. auth2.c
  40. authfd.c
  41. authfd.h
  42. authfile.c
  43. authfile.h
  44. bitmap.c
  45. bitmap.h
  46. blocks.c
  47. bufaux.c
  48. bufbn.c
  49. bufec.c
  50. buffer.c
  51. buffer.h
  52. buildpkg.sh.in
  53. canohost.c
  54. canohost.h
  55. chacha.c
  56. chacha.h
  57. channels.c
  58. channels.h
  59. cipher-3des1.c
  60. cipher-aes.c
  61. cipher-aesctr.c
  62. cipher-aesctr.h
  63. cipher-bf1.c
  64. cipher-chachapoly.c
  65. cipher-chachapoly.h
  66. cipher-ctr.c
  67. cipher.c
  68. cipher.h
  69. cleanup.c
  70. clientloop.c
  71. clientloop.h
  72. compat.c
  73. compat.h
  74. config.guess
  75. config.sub
  76. configure.ac
  77. crc32.c
  78. crc32.h
  79. CREDITS
  80. crypto_api.h
  81. deattack.c
  82. deattack.h
  83. defines.h
  84. dh.c
  85. dh.h
  86. digest-libc.c
  87. digest-openssl.c
  88. digest.h
  89. dispatch.c
  90. dispatch.h
  91. dns.c
  92. dns.h
  93. ed25519.c
  94. entropy.c
  95. entropy.h
  96. fatal.c
  97. fe25519.c
  98. fe25519.h
  99. fixalgorithms
  100. fixpaths
  101. fixprogs
  102. ge25519.c
  103. ge25519.h
  104. ge25519_base.data
  105. groupaccess.c
  106. groupaccess.h
  107. gss-genr.c
  108. gss-serv-krb5.c
  109. gss-serv.c
  110. hash.c
  111. hmac.c
  112. hmac.h
  113. hostfile.c
  114. hostfile.h
  115. includes.h
  116. INSTALL
  117. install-sh
  118. kex.c
  119. kex.h
  120. kexc25519.c
  121. kexc25519c.c
  122. kexc25519s.c
  123. kexdh.c
  124. kexdhc.c
  125. kexdhs.c
  126. kexecdh.c
  127. kexecdhc.c
  128. kexecdhs.c
  129. kexgex.c
  130. kexgexc.c
  131. kexgexs.c
  132. key.c
  133. key.h
  134. krl.c
  135. krl.h
  136. LICENCE
  137. log.c
  138. log.h
  139. loginrec.c
  140. loginrec.h
  141. logintest.c
  142. mac.c
  143. mac.h
  144. Makefile.in
  145. match.c
  146. match.h
  147. md-sha256.c
  148. md5crypt.c
  149. md5crypt.h
  150. mdoc2man.awk
  151. misc.c
  152. misc.h
  153. mkinstalldirs
  154. moduli
  155. moduli.5
  156. moduli.c
  157. monitor.c
  158. monitor.h
  159. monitor_fdpass.c
  160. monitor_fdpass.h
  161. monitor_mm.c
  162. monitor_mm.h
  163. monitor_wrap.c
  164. monitor_wrap.h
  165. msg.c
  166. msg.h
  167. mux.c
  168. myproposal.h
  169. nchan.c
  170. nchan.ms
  171. nchan2.ms
  172. opacket.c
  173. opacket.h
  174. openssh.xml.in
  175. opensshd.init.in
  176. OVERVIEW
  177. packet.c
  178. packet.h
  179. pathnames.h
  180. pkcs11.h
  181. platform.c
  182. platform.h
  183. poly1305.c
  184. poly1305.h
  185. progressmeter.c
  186. progressmeter.h
  187. PROTOCOL
  188. PROTOCOL.agent
  189. PROTOCOL.certkeys
  190. PROTOCOL.chacha20poly1305
  191. PROTOCOL.key
  192. PROTOCOL.krl
  193. PROTOCOL.mux
  194. readconf.c
  195. readconf.h
  196. README
  197. README.dns
  198. README.platform
  199. README.privsep
  200. README.tun
  201. readpass.c
  202. rijndael.c
  203. rijndael.h
  204. roaming.h
  205. roaming_client.c
  206. roaming_common.c
  207. roaming_dummy.c
  208. roaming_serv.c
  209. rsa.c
  210. rsa.h
  211. sandbox-capsicum.c
  212. sandbox-darwin.c
  213. sandbox-null.c
  214. sandbox-pledge.c
  215. sandbox-rlimit.c
  216. sandbox-seccomp-filter.c
  217. sandbox-systrace.c
  218. sc25519.c
  219. sc25519.h
  220. scp.1
  221. scp.c
  222. servconf.c
  223. servconf.h
  224. serverloop.c
  225. serverloop.h
  226. session.c
  227. session.h
  228. sftp-client.c
  229. sftp-client.h
  230. sftp-common.c
  231. sftp-common.h
  232. sftp-glob.c
  233. sftp-server-main.c
  234. sftp-server.8
  235. sftp-server.c
  236. sftp.1
  237. sftp.c
  238. sftp.h
  239. smult_curve25519_ref.c
  240. ssh-add.1
  241. ssh-add.c
  242. ssh-agent.1
  243. ssh-agent.c
  244. ssh-dss.c
  245. ssh-ecdsa.c
  246. ssh-ed25519.c
  247. ssh-gss.h
  248. ssh-keygen.1
  249. ssh-keygen.c
  250. ssh-keyscan.1
  251. ssh-keyscan.c
  252. ssh-keysign.8
  253. ssh-keysign.c
  254. ssh-pkcs11-client.c
  255. ssh-pkcs11-helper.8
  256. ssh-pkcs11-helper.c
  257. ssh-pkcs11.c
  258. ssh-pkcs11.h
  259. ssh-rsa.c
  260. ssh-sandbox.h
  261. ssh.1
  262. ssh.c
  263. ssh.h
  264. ssh1.h
  265. ssh2.h
  266. ssh_api.c
  267. ssh_api.h
  268. ssh_config
  269. ssh_config.5
  270. sshbuf-getput-basic.c
  271. sshbuf-getput-crypto.c
  272. sshbuf-misc.c
  273. sshbuf.c
  274. sshbuf.h
  275. sshconnect.c
  276. sshconnect.h
  277. sshconnect1.c
  278. sshconnect2.c
  279. sshd.8
  280. sshd.c
  281. sshd_config
  282. sshd_config.5
  283. ssherr.c
  284. ssherr.h
  285. sshkey.c
  286. sshkey.h
  287. sshlogin.c
  288. sshlogin.h
  289. sshpty.c
  290. sshpty.h
  291. sshtty.c
  292. survey.sh.in
  293. TODO
  294. ttymodes.c
  295. ttymodes.h
  296. uidswap.c
  297. uidswap.h
  298. umac.c
  299. umac.h
  300. uuencode.c
  301. uuencode.h
  302. verify.c
  303. version.h
  304. xmalloc.c
  305. xmalloc.h