Commit graph

46 commits

Author SHA1 Message Date
Russ Cox
b3a20a96eb libthread: add threadmaybackground
Programs that want to background themselves now need
to define threadmaybackground returning 1.
This avoids a confusing (to people and debuggers)
extra parent process for all the threaded programs
that will never want to background themselves.
2020-12-30 00:12:14 -05:00
Dan Cross
fa325e9b42 Trivial changes: whitespace and modes.
Remote whitespace at the ends of lines.
Remove blank lines from the ends of files.
Change modes on source files so that they
are not executable.

Signed-off-by: Dan Cross <cross@gajendra.net>
2020-01-10 14:54:30 +00:00
Ray Lai
d579124682 9pserve: fix memory leak in warning 2018-03-23 11:55:19 +01:00
Russ Cox
74dd032175 delete 9P2000.u
thanks to Erik Quanstrom

R=rsc
http://codereview.appspot.com/3469042
2010-12-07 13:34:11 -05:00
Russ Cox
bf486dfc16 9pserve: roll back changeset 3118 - broke ssh-agent talking to factotum 2009-12-10 01:53:39 -08:00
Michael Teichgräber
4fe82be00a Related to issue
http://bitbucket.org/rsc/plan9port/issue/38/

This patch tries to make 9pserve work again with
9P2000 clients, in case the server handled by 9pserve
expects 9P2000.u.

(Since changeset
http://bitbucket.org/rsc/plan9port/changeset/d9843471f0bc/
servers using srv() stop communicating after they
received a 9P2000 msg that has a different .u
definition.)

Tattach, Tauth and Tcreate 9P2000 messages will
be translated now, if neccessary, to 9P2000.u by
growing them to the new size, and providing the
missing (default) values.

The code of the first two message types has been
tested with drawterm on linux (dialing factotum),
and mounts from within 9vx to plan9port's factotum
and dossrv.

The code for Tcreate couldn't be tested due to lack
of file servers both speaking 9P2000.u and allowing file
creation.

R=rsc_swtch, rsc
CC=codebot
http://codereview.appspot.com/151052
2009-11-30 12:39:50 -08:00
Russ Cox
ef6606c7a7 9pserve: add -c option 2008-06-11 06:40:54 -07:00
Russ Cox
9b25329723 9pserve: add -n flag to reject auth by clients 2007-10-12 12:55:19 -04:00
Russ Cox
ec9247088b 9pserve: delete from correct hash slot (fix infinite loop) 2007-08-28 08:45:27 -04:00
Russ Cox
4a6f051073 9pserve: fix a new race involving assert(c->nmsg == 0).
Just like outputthread can have processed the message
but not yet called msgput, the same is true of the
connoutthread, so we cannot check c->nmsg until
after the connoutthread has shut down gracefully.
2007-08-22 09:14:25 -04:00
Russ Cox
841d71b5c6 9pserve: fix races causing assert(c->nmsg == 0) to fail.
1. Could happen that connoutthread sends c->outq a nil
just before the regular input handler sends c->outq a real message.
When the connoutthread gets the nil it will free c->outq,
leaving the real message unprocessed.

2. Could happen that the outputthread writes a message
body to the remote 9P server and then a response comes
in and then the connection gets torn down, all before the
outputthread manages to call msgput(m).
Thanks to David Swasey for identifying this scenario.

Also change yield() loop into explicit communication.

Also remove dead code involving hungup queues.
2007-08-22 08:55:08 -04:00
rsc
6322b295cf ignore window resize; should be elsewhere 2007-06-18 15:19:26 +00:00
rsc
7cb82e1580 use same name that srv.c does 2006-05-27 07:22:56 +00:00
rsc
fdd0f8415f paranoia about extension 2006-05-04 19:41:51 +00:00
rsc
f246629788 paranoia about extension 2006-05-04 19:10:11 +00:00
rsc
d9ed72433f darwin 2006-04-21 04:26:02 +00:00
rsc
cbeb0b26e4 Use gcc -ansi -pedantic in 9c. Fix many non-C89-isms. 2006-04-01 19:24:03 +00:00
rsc
b5c7be2fd6 change Tcreate message in 9P2000.u 2006-03-03 16:34:49 +00:00
rsc
9777187bc7 fix offsets 2006-02-03 04:36:50 +00:00
rsc
9e2f1d9bf4 9P2000.u fixes (Lucho Ionkov) 2005-11-21 20:42:52 +00:00
rsc
16c1defa3d x11, used, etc. 2005-11-12 16:36:48 +00:00
rsc
54705b4aba Signedness. 2005-09-13 04:05:27 +00:00
rsc
23e7c65741 Signedness bugs for Mac OS X. 2005-09-13 03:58:31 +00:00
rsc
215993f844 Add 9P2000.u extensions. 2005-09-13 01:55:31 +00:00
rsc
34e8254fb8 use correct type for NOFID (sunos) 2005-07-27 20:42:07 +00:00
rsc
5c84c448b8 add srv -a option 2005-03-21 17:24:21 +00:00
rsc
3a6f92eed1 add verbose9pserve environment variable; fix afid ref 2005-03-18 19:22:01 +00:00
rsc
c042e61ec7 ignore tstp 2005-03-18 19:01:39 +00:00
rsc
80568494de bug fixes; quieter 2005-02-11 16:53:54 +00:00
rsc
38c10d1abc do not call exits in threaded programs 2005-01-17 21:29:00 +00:00
rsc
bb426e77f6 more precision on time 2005-01-06 23:11:14 +00:00
rsc
e2a1725dfc more debugging 2005-01-04 21:24:52 +00:00
rsc
70997336be remove debugging print 2004-12-28 22:13:33 +00:00
rsc
21e626deb3 remove race between openfdthread and connoutthread msgput,
so that openfd'ed fids always get clunked properly.
2004-12-28 22:11:34 +00:00
rsc
7ffc5208a8 use threaddaemonize 2004-12-28 01:37:18 +00:00
rsc
9939daadf4 use new thread library 2004-12-27 16:56:16 +00:00
rsc
8ad517944e Today's changes.
More changes.
2004-03-25 23:03:57 +00:00
rsc
c91bd3283a Pipes cannot use SOCK_DGRAM. Back to SOCK_STREAM.
Add debugging to fdwait.

Rewrite getcallerpc on PowerMac to be correct.
2004-03-05 02:25:41 +00:00
rsc
05b7f431f0 Long-standing stability bugs fixed in 9pserve.
Update win to use acme interface directly instead of via pipes.
Add comment to pipe about lack of message boundaries.
2004-03-02 19:21:48 +00:00
rsc
53dbac9485 Tweaks for the Macintosh. 2004-03-02 16:58:49 +00:00
rsc
f063dad96e Small tweaks to make things build again. 2004-02-29 22:42:33 +00:00
rsc
5a8e63b2f0 Fighting the good fight.
Move libfmt, libutf into subdirectories of lib9.

Add poll-based socket i/o to libthread, so that we can
avoid using multiple procs when possible, thus removing
dependence on crappy pthreads implementations.

Convert samterm, acme to the single-proc libthread.

Bring libcomplete, acme up-to-date w.r.t. Plan 9 distribution.
2004-02-29 22:10:26 +00:00
rsc
49588d5d90 Tweaks to various bits.
Until I hear otherwise, Refs aren't used enough to
merit their own assembly.  They are now implemented with locks.
2003-12-17 04:34:52 +00:00
rsc
32f69c36e0 Add support for user-level 9P servers/clients and various bug fixes to go with them. 2003-12-11 17:48:38 +00:00
rsc
ceb0477083 check everything in so i can move to linux and valgrind. 2003-12-09 06:06:07 +00:00
rsc
d3df308747 File system stuff. 2003-12-06 18:08:52 +00:00