Re: [as-devel] read() on a socket in *BSD

Ethan (allanon@crystaltokyo.com)
Tue, 15 Jun 1999 00:59:05 -0700 (PDT)


  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---942840952-1745495353-929433545=:24539
Content-Type: TEXT/PLAIN; charset=US-ASCII


Here's a patch to add buffered non-blocking input.  Would someone with 
a *BSD system test it for me?  It seems to work well on my linux box, so 
far.

Can anyone tell me why I seem to lose the first byte sent to AS via the 
socket if I set non-blocking in module_accept() and never change it back 
to blocking in FlushQueue() (with this patch installed)?  Animate and 
Gnome seem to load and work, but when I try Wharf or Pager, the first 
byte of the window in the SET_NAME command never arrives.  The rest of 
the packet makes the transfer fine.

David: This patch is for testing only.  Please add it to 
/devel/patches/contrib instead of /devel/patches.

----
Ethan Fischer
allanon@crystaltokyo.com
http://members.xoom.com/allanon1

---942840952-1745495353-929433545=:24539
Content-Type: APPLICATION/octet-stream; name="1.7.111-04-allanon-socket.patch.gz"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.3.95.990615005905.24539G@crystaltokyo.com>
Content-Description: 

H4sICFIDZjcCAzEuNy4xMTEtMDQtYWxsYW5vbi1zb2NrZXQucGF0Y2gA7V1b
c9vIlX4Wf8WJEtukQMq86hpNjcaSHO1Y0sTSxFM1mWJBQJPECGxwcRGtuLy/
KG/5BVu1eUse9lK1f2Ae9nF/wp7T3bgSIAEPs5mRQtu8dJ8+3X3663MDGjat
0Qhal9AKoOXC8chn7rXPZi0jcF3G/ZdRybY3Y8YiQTdDUWu1WivZbFw4HP4p
4NDpQ6d90B8ctPegs7+/X9M0bXUfqea7B+3ewWBXNv/8c2h1mjug0dvnn9fg
mclGFmcbXJ+yjYhLrRWWj+6Zu9HZ3t3udPpxKRZ6lsOjCi2HfBCXpskHca8u
s5nusY1OXOQx19JtKqmZK0T/aqLzMXvjjPMkElUWCDyqryzr/JZCzL29pJh7
JOY9ErMmZ96Bme4bE+hDXbdtnTu8UdPAgaljBjaDmTVjHuguA+7M8R9v3dqO
cWfxMSA5+BMGvjVloslvdG7a7EI0POezwK83RKs7xmbIA26D0Yi54IzAoloY
uc4Ui8fWPeNhf8gIIOC+ZWON4UynyBMsj77ObOZjRzVID7wHdaQ2nWDUqAGO
YmS9ZybyRvBgzw9zxzW9Jlye4r93TbjGz+t3YkJTB98MXGy3iQMCbAygk2g9
wix23MRe+cgaBy7bNoAGYjvO3TZndyth8Pb0+OTiNG+lZE0BAGRl5dXPaSaX
vmiHba3xtcgNKrwWuLUKud1MEAf4NxKAAkJ/CTetMrfBEm7rnemaV2ElJvXA
dwjQL2NUI+xz4JRLWIDYXNrKAF7NZRHP7eYuApreCdHHr4avri7Pzl8Pj7/+
Znhy/rYe8mwkK3+DO+X0bV12sz05yHS8PcF+sUGtpczD0abC2GZNyxQNNpEO
TG7/Eq6ZH8xCbdWy0WSAM/OR1iuxLNGU8wQTVRaIP6qvLPL8lgti3unukpzl
Bwla/Cktnhr4zPNh8/2vZi7a0vebcATvL68uT+H5c5BFR7/SjSEaWj2w/aEs
Wikz0zFeoq0aB/qYeUr9bRt/yJtnAWmBPAuoc6S7v1S6ZfigrLsHg15SRROi
Izn/HJX0Et0Mn6Kml2hneLSKOhc8JiuNM5NVQbfJ1oNuk+Wgu/8oHJATi5Gv
4JeBdxlsF/IbPFFs35VH2V0lbN+tCdt3jxbbcMJ8nwFzS4C7lN4u5Dd4kthm
XmmUMa8Ktpm3Hmxn+DwqbCdfy+FdIXIs45k8BWSPrNIYG1lVkD2y1oPsDJ9H
heybH6Y/gMPX5ZEU8nuiHsnILY8ytxK23TVh233MWvt3jmVYa8N2Eb8niu1x
eWyPK2F7vCZsj92n4JHcOOt1SXL4PT2fxDJLo8wyq2DbMteD7Qyf/z9sr33B
ixB+zi1bn+Rgux4VvdgfvG8UsNTKsxyUZLn2aa9/YT4R7X553PmV0O6vCe3+
z1KTQxmc/zZgnu/A/3yCm5IL8kJ+q92UNc/2J6HJv5+VRtn3syrY/n62Hmxn
+Dyu6HL1pfZq0eXqi+1PyUvhdmmUcbsKtrm9Hmxn+DxCL+UEbWcuwJMuRSUn
pYDjoBzHR+ujcKc86pxKWHfWhHXnH9d21n5p5+elxeETsT0rr8dnlfT4bE16
fGY/XmyXu9WkPLjL3WryZHwUt7zedivpbXdNett9tHr72MBIUAd8Y2tR3Mv4
DZ4ktoPtO8faKw81SV8J5bLJmqCew+wR5VL+9z/+/G//+V//+t9/+fc//7Uy
4HPwvpTf4AnmUrzy9w56le4d9NZ076D3iO8dRJ9Zhx/ctd07WMTvieZS/Hlp
lPnzKtj254vY7rSrYzvD5++J7Q16lQMukv3J+ePVImoLGGhlGQwKGFQY7E8C
dw9BaQQ8BFVw9xCsB3cZPo8q9ru6d+B7ViZ7Vy72K+A3KMPv561TLW7Ygcle
Ti3P2J7kgStNUYDkNNHGTcAE8GAPOnsHnc5Bt7MUwJnmy3G722vuIXLxQ2KX
vUd+HO4dy8TvzAh8dQYV6sZEd2GrCWfnb07pU/7eovOePmw1DqPGXziOTce4
zhwj8KD+zuKmM2/C8bX8Rm2JJNFCdPdqwoy7Y27GLakYqVpJKotbvhzRIgEN
ZOHcbDwArM72yZ2Rg43U3OiMdJZiSudih57v0indOn4Ghq+OsgohONzzIRRN
WkQJVpl2SabdPK6CD7YvjTgx3xWYUzSrUKfIBO4ucBywT7jr9qMz5qtwFzJY
irxBn1Qmvu8L3NHSyYZDjw4ADj3HuGPR4sE8KeotMC1vZusPSoQk6AQD28Lg
nNeT9JLbMFzgBLFuGGzm16lEEY0IUppcfElDmANBMnIZG7rMcwLXYF6WTow8
QqVWAEcqxlFxzsQWqMHLLXl627ZuQ+EZsPUyNUycDGeGv2RSq6DiucbL6ER2
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
---942840952-1745495353-929433545=:24539--