- markus@cvs.openbsd.org 2001/12/19 16:09:39
     [serverloop.c]
     fix race between SIGCHLD and select with an additional pipe.  writing
     to the pipe on SIGCHLD wakes up select(). using pselect() is not
     portable and siglongjmp() ugly. W. R. Stevens suggests similar solution.
     initial idea by pmenage@ensim.com; ok deraadt@, djm@
2 files changed
tree: 30dffcc80c35ed4b1e97d4d114a8eaebc14412be
  1. contrib/
  2. openbsd-compat/
  3. scard/
  4. .cvsignore
  5. acconfig.h
  6. aclocal.m4
  7. atomicio.c
  8. atomicio.h
  9. auth-bsdauth.c
  10. auth-chall.c
  11. auth-krb4.c
  12. auth-krb5.c
  13. auth-options.c
  14. auth-options.h
  15. auth-pam.c
  16. auth-pam.h
  17. auth-passwd.c
  18. auth-rh-rsa.c
  19. auth-rhosts.c
  20. auth-rsa.c
  21. auth-sia.c
  22. auth-sia.h
  23. auth-skey.c
  24. auth.c
  25. auth.h
  26. auth1.c
  27. auth2-chall.c
  28. auth2-pam.c
  29. auth2-pam.h
  30. auth2.c
  31. authfd.c
  32. authfd.h
  33. authfile.c
  34. authfile.h
  35. bufaux.c
  36. bufaux.h
  37. buffer.c
  38. buffer.h
  39. canohost.c
  40. canohost.h
  41. ChangeLog
  42. channels.c
  43. channels.h
  44. cipher.c
  45. cipher.h
  46. clientloop.c
  47. clientloop.h
  48. compat.c
  49. compat.h
  50. compress.c
  51. compress.h
  52. config.guess
  53. config.sub
  54. configure.ac
  55. crc32.c
  56. crc32.h
  57. CREDITS
  58. deattack.c
  59. deattack.h
  60. defines.h
  61. dh.c
  62. dh.h
  63. dispatch.c
  64. dispatch.h
  65. entropy.c
  66. entropy.h
  67. fixpaths
  68. fixprogs
  69. getput.h
  70. groupaccess.c
  71. groupaccess.h
  72. hostfile.c
  73. hostfile.h
  74. includes.h
  75. INSTALL
  76. install-sh
  77. kex.c
  78. kex.h
  79. kexdh.c
  80. kexgex.c
  81. key.c
  82. key.h
  83. LICENCE
  84. log.c
  85. log.h
  86. loginrec.c
  87. loginrec.h
  88. logintest.c
  89. mac.c
  90. mac.h
  91. Makefile.in
  92. match.c
  93. match.h
  94. md5crypt.c
  95. md5crypt.h
  96. mdoc2man.pl
  97. misc.c
  98. misc.h
  99. mkinstalldirs
  100. moduli
  101. mpaux.c
  102. mpaux.h
  103. myproposal.h
  104. nchan.c
  105. nchan.ms
  106. nchan2.ms
  107. OVERVIEW
  108. packet.c
  109. packet.h
  110. pathnames.h
  111. radix.c
  112. radix.h
  113. readconf.c
  114. readconf.h
  115. README
  116. README.smartcard
  117. readpass.c
  118. readpass.h
  119. RFC.nroff
  120. rijndael.c
  121. rijndael.h
  122. rsa.c
  123. rsa.h
  124. scard.c
  125. scard.h
  126. scp.1
  127. scp.c
  128. servconf.c
  129. servconf.h
  130. serverloop.c
  131. serverloop.h
  132. session.c
  133. session.h
  134. sftp-client.c
  135. sftp-client.h
  136. sftp-common.c
  137. sftp-common.h
  138. sftp-glob.c
  139. sftp-glob.h
  140. sftp-int.c
  141. sftp-int.h
  142. sftp-server.8
  143. sftp-server.c
  144. sftp.1
  145. sftp.c
  146. sftp.h
  147. ssh-add.1
  148. ssh-add.c
  149. ssh-agent.1
  150. ssh-agent.c
  151. ssh-dss.c
  152. ssh-dss.h
  153. ssh-keygen.1
  154. ssh-keygen.c
  155. ssh-keyscan.1
  156. ssh-keyscan.c
  157. ssh-rsa.c
  158. ssh-rsa.h
  159. ssh.1
  160. ssh.c
  161. ssh.h
  162. ssh1.h
  163. ssh2.h
  164. ssh_config
  165. ssh_prng_cmds.in
  166. sshconnect.c
  167. sshconnect.h
  168. sshconnect1.c
  169. sshconnect2.c
  170. sshd.8
  171. sshd.c
  172. sshd_config
  173. sshlogin.c
  174. sshlogin.h
  175. sshpty.c
  176. sshpty.h
  177. sshtty.c
  178. sshtty.h
  179. tildexpand.c
  180. tildexpand.h
  181. TODO
  182. ttymodes.c
  183. ttymodes.h
  184. uidswap.c
  185. uidswap.h
  186. uuencode.c
  187. uuencode.h
  188. version.h
  189. WARNING.RNG
  190. xmalloc.c
  191. xmalloc.h