- 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. .cvsignore
  2. CREDITS
  3. ChangeLog
  4. INSTALL
  5. LICENCE
  6. Makefile.in
  7. OVERVIEW
  8. README
  9. README.dns
  10. README.platform
  11. README.privsep
  12. README.smartcard
  13. README.tun
  14. RFC.nroff
  15. TODO
  16. WARNING.RNG
  17. aclocal.m4
  18. acss.c
  19. acss.h
  20. atomicio.c
  21. atomicio.h
  22. audit-bsm.c
  23. audit.c
  24. audit.h
  25. auth-bsdauth.c
  26. auth-chall.c
  27. auth-krb5.c
  28. auth-options.c
  29. auth-options.h
  30. auth-pam.c
  31. auth-pam.h
  32. auth-passwd.c
  33. auth-rh-rsa.c
  34. auth-rhosts.c
  35. auth-rsa.c
  36. auth-shadow.c
  37. auth-sia.c
  38. auth-sia.h
  39. auth-skey.c
  40. auth.c
  41. auth.h
  42. auth1.c
  43. auth2-chall.c
  44. auth2-gss.c
  45. auth2-hostbased.c
  46. auth2-kbdint.c
  47. auth2-none.c
  48. auth2-passwd.c
  49. auth2-pubkey.c
  50. auth2.c
  51. authfd.c
  52. authfd.h
  53. authfile.c
  54. authfile.h
  55. bufaux.c
  56. bufbn.c
  57. buffer.c
  58. buffer.h
  59. buildpkg.sh.in
  60. canohost.c
  61. canohost.h
  62. channels.c
  63. channels.h
  64. cipher-3des1.c
  65. cipher-acss.c
  66. cipher-aes.c
  67. cipher-bf1.c
  68. cipher-ctr.c
  69. cipher.c
  70. cipher.h
  71. cleanup.c
  72. clientloop.c
  73. clientloop.h
  74. compat.c
  75. compat.h
  76. compress.c
  77. compress.h
  78. config.guess
  79. config.sub
  80. configure.ac
  81. contrib/
  82. crc32.c
  83. crc32.h
  84. deattack.c
  85. deattack.h
  86. defines.h
  87. dh.c
  88. dh.h
  89. dispatch.c
  90. dispatch.h
  91. dns.c
  92. dns.h
  93. entropy.c
  94. entropy.h
  95. fatal.c
  96. fixpaths
  97. fixprogs
  98. groupaccess.c
  99. groupaccess.h
  100. gss-genr.c
  101. gss-serv-krb5.c
  102. gss-serv.c
  103. hostfile.c
  104. hostfile.h
  105. includes.h
  106. install-sh
  107. kex.c
  108. kex.h
  109. kexdh.c
  110. kexdhc.c
  111. kexdhs.c
  112. kexgex.c
  113. kexgexc.c
  114. kexgexs.c
  115. key.c
  116. key.h
  117. log.c
  118. log.h
  119. loginrec.c
  120. loginrec.h
  121. logintest.c
  122. mac.c
  123. mac.h
  124. match.c
  125. match.h
  126. md-sha256.c
  127. md5crypt.c
  128. md5crypt.h
  129. mdoc2man.awk
  130. misc.c
  131. misc.h
  132. mkinstalldirs
  133. moduli
  134. moduli.c
  135. monitor.c
  136. monitor.h
  137. monitor_fdpass.c
  138. monitor_fdpass.h
  139. monitor_mm.c
  140. monitor_mm.h
  141. monitor_wrap.c
  142. monitor_wrap.h
  143. msg.c
  144. msg.h
  145. myproposal.h
  146. nchan.c
  147. nchan.ms
  148. nchan2.ms
  149. openbsd-compat/
  150. openssh.xml.in
  151. opensshd.init.in
  152. packet.c
  153. packet.h
  154. pathnames.h
  155. platform.c
  156. platform.h
  157. progressmeter.c
  158. progressmeter.h
  159. readconf.c
  160. readconf.h
  161. readpass.c
  162. regress/
  163. rijndael.c
  164. rijndael.h
  165. rsa.c
  166. rsa.h
  167. scard-opensc.c
  168. scard.c
  169. scard.h
  170. scard/
  171. scp.1
  172. scp.c
  173. servconf.c
  174. servconf.h
  175. serverloop.c
  176. serverloop.h
  177. session.c
  178. session.h
  179. sftp-client.c
  180. sftp-client.h
  181. sftp-common.c
  182. sftp-common.h
  183. sftp-glob.c
  184. sftp-server-main.c
  185. sftp-server.8
  186. sftp-server.c
  187. sftp.1
  188. sftp.c
  189. sftp.h
  190. ssh-add.1
  191. ssh-add.c
  192. ssh-agent.1
  193. ssh-agent.c
  194. ssh-dss.c
  195. ssh-gss.h
  196. ssh-keygen.1
  197. ssh-keygen.c
  198. ssh-keyscan.1
  199. ssh-keyscan.c
  200. ssh-keysign.8
  201. ssh-keysign.c
  202. ssh-rand-helper.8
  203. ssh-rand-helper.c
  204. ssh-rsa.c
  205. ssh.1
  206. ssh.c
  207. ssh.h
  208. ssh1.h
  209. ssh2.h
  210. ssh_config
  211. ssh_config.5
  212. ssh_prng_cmds.in
  213. sshconnect.c
  214. sshconnect.h
  215. sshconnect1.c
  216. sshconnect2.c
  217. sshd.8
  218. sshd.c
  219. sshd_config
  220. sshd_config.5
  221. sshlogin.c
  222. sshlogin.h
  223. sshpty.c
  224. sshpty.h
  225. sshtty.c
  226. survey.sh.in
  227. ttymodes.c
  228. ttymodes.h
  229. uidswap.c
  230. uidswap.h
  231. umac.c
  232. umac.h
  233. uuencode.c
  234. uuencode.h
  235. version.h
  236. xmalloc.c
  237. xmalloc.h