- djm@cvs.openbsd.org 2008/05/08 13:06:11
     [clientloop.c clientloop.h ssh.c]
     Use new channel status confirmation callback system to properly deal
     with "important" channel requests that fail, in particular command exec,
     shell and subsystem requests. Previously we would optimistically assume
     that the requests would always succeed, which could cause hangs if they
     did not (e.g. when the server runs out of fds) or were unimplemented by
     the server (bz #1384)
     Also, properly report failing multiplex channel requests via the mux
     client stderr (subject to LogLevel in the mux master) - better than
     silently failing.
     most bits ok markus@ (as part of a larger diff)
4 files changed
tree: d24e88330fb1b3b2de2e1ed770ba0f28963c5049
  1. contrib/
  2. openbsd-compat/
  3. regress/
  4. scard/
  5. .cvsignore
  6. aclocal.m4
  7. acss.c
  8. acss.h
  9. atomicio.c
  10. atomicio.h
  11. audit-bsm.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. bufaux.c
  45. bufbn.c
  46. buffer.c
  47. buffer.h
  48. buildpkg.sh.in
  49. canohost.c
  50. canohost.h
  51. ChangeLog
  52. channels.c
  53. channels.h
  54. cipher-3des1.c
  55. cipher-acss.c
  56. cipher-aes.c
  57. cipher-bf1.c
  58. cipher-ctr.c
  59. cipher.c
  60. cipher.h
  61. cleanup.c
  62. clientloop.c
  63. clientloop.h
  64. compat.c
  65. compat.h
  66. compress.c
  67. compress.h
  68. config.guess
  69. config.sub
  70. configure.ac
  71. crc32.c
  72. crc32.h
  73. CREDITS
  74. deattack.c
  75. deattack.h
  76. defines.h
  77. dh.c
  78. dh.h
  79. dispatch.c
  80. dispatch.h
  81. dns.c
  82. dns.h
  83. entropy.c
  84. entropy.h
  85. fatal.c
  86. fixpaths
  87. fixprogs
  88. groupaccess.c
  89. groupaccess.h
  90. gss-genr.c
  91. gss-serv-krb5.c
  92. gss-serv.c
  93. hostfile.c
  94. hostfile.h
  95. includes.h
  96. INSTALL
  97. install-sh
  98. kex.c
  99. kex.h
  100. kexdh.c
  101. kexdhc.c
  102. kexdhs.c
  103. kexgex.c
  104. kexgexc.c
  105. kexgexs.c
  106. key.c
  107. key.h
  108. LICENCE
  109. log.c
  110. log.h
  111. loginrec.c
  112. loginrec.h
  113. logintest.c
  114. mac.c
  115. mac.h
  116. Makefile.in
  117. match.c
  118. match.h
  119. md-sha256.c
  120. md5crypt.c
  121. md5crypt.h
  122. mdoc2man.awk
  123. misc.c
  124. misc.h
  125. mkinstalldirs
  126. moduli
  127. moduli.c
  128. monitor.c
  129. monitor.h
  130. monitor_fdpass.c
  131. monitor_fdpass.h
  132. monitor_mm.c
  133. monitor_mm.h
  134. monitor_wrap.c
  135. monitor_wrap.h
  136. msg.c
  137. msg.h
  138. myproposal.h
  139. nchan.c
  140. nchan.ms
  141. nchan2.ms
  142. openssh.xml.in
  143. opensshd.init.in
  144. OVERVIEW
  145. packet.c
  146. packet.h
  147. pathnames.h
  148. platform.c
  149. platform.h
  150. progressmeter.c
  151. progressmeter.h
  152. readconf.c
  153. readconf.h
  154. README
  155. README.dns
  156. README.platform
  157. README.privsep
  158. README.smartcard
  159. README.tun
  160. readpass.c
  161. RFC.nroff
  162. rijndael.c
  163. rijndael.h
  164. rsa.c
  165. rsa.h
  166. scard-opensc.c
  167. scard.c
  168. scard.h
  169. scp.1
  170. scp.c
  171. servconf.c
  172. servconf.h
  173. serverloop.c
  174. serverloop.h
  175. session.c
  176. session.h
  177. sftp-client.c
  178. sftp-client.h
  179. sftp-common.c
  180. sftp-common.h
  181. sftp-glob.c
  182. sftp-server-main.c
  183. sftp-server.8
  184. sftp-server.c
  185. sftp.1
  186. sftp.c
  187. sftp.h
  188. ssh-add.1
  189. ssh-add.c
  190. ssh-agent.1
  191. ssh-agent.c
  192. ssh-dss.c
  193. ssh-gss.h
  194. ssh-keygen.1
  195. ssh-keygen.c
  196. ssh-keyscan.1
  197. ssh-keyscan.c
  198. ssh-keysign.8
  199. ssh-keysign.c
  200. ssh-rand-helper.8
  201. ssh-rand-helper.c
  202. ssh-rsa.c
  203. ssh.1
  204. ssh.c
  205. ssh.h
  206. ssh1.h
  207. ssh2.h
  208. ssh_config
  209. ssh_config.5
  210. ssh_prng_cmds.in
  211. sshconnect.c
  212. sshconnect.h
  213. sshconnect1.c
  214. sshconnect2.c
  215. sshd.8
  216. sshd.c
  217. sshd_config
  218. sshd_config.5
  219. sshlogin.c
  220. sshlogin.h
  221. sshpty.c
  222. sshpty.h
  223. sshtty.c
  224. survey.sh.in
  225. TODO
  226. ttymodes.c
  227. ttymodes.h
  228. uidswap.c
  229. uidswap.h
  230. umac.c
  231. umac.h
  232. uuencode.c
  233. uuencode.h
  234. version.h
  235. WARNING.RNG
  236. xmalloc.c
  237. xmalloc.h