This patch does two things, one large and one small.  Bug 207313. 1, It uses two new symbols SSOCK_FD and STDIN_FD instead of 0 and 1 to reference members of the poll set array.  I just could never remember whether pollset[0] was the socket or was stdin.  Now I don't have to remember. This changes a lot of lines, but is very simple. 2. It implementa a new flag clientSpeaksFirst, set with the -f option. The only effect of this flag is whether the value of pollset[SSOCK_FD].in_flags is initially zero (if true) or PR_POLL_READ (if false).  Note that pollset[SSOCK_FD].in_flags is set to PR_POLL_READ after each succesful write to the socket.
This patch does two things, one large and one small.  Bug 207313.
1, It uses two new symbols SSOCK_FD and STDIN_FD instead of 0 and 1 to
reference members of the poll set array.  I just could never remember whether
pollset[0] was the socket or was stdin.  Now I don't have to remember.
This changes a lot of lines, but is very simple.
2. It implementa a new flag clientSpeaksFirst, set with the -f option.
The only effect of this flag is whether the value of
pollset[SSOCK_FD].in_flags is initially zero (if true) or PR_POLL_READ (if false).  Note that pollset[SSOCK_FD].in_flags is set to PR_POLL_READ after
each succesful write to the socket.

thespooler/nss,thespooler/nss,thespooler/nss,thespooler/nss,thespooler/nss,thespooler/nss,thespooler/nss