]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC r207070,r207343,r207345,r207347,r207348,r207371,r207372,r207390:
authorpjd <pjd@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 1 May 2010 19:16:08 +0000 (19:16 +0000)
committerpjd <pjd@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 1 May 2010 19:16:08 +0000 (19:16 +0000)
commit982dfc2d8aa2a53ba36ad2c2ff25d8576e2d3003
treecabcb8062510767be0aca0b00e31324633fbbf13
parent7cdf8b54bdd8e2bb8875a1e2f576db9bc645d786
MFC r207070,r207343,r207345,r207347,r207348,r207371,r207372,r207390:

r207070:

Fix compilation with WITHOUT_CRYPT or WITHOUT_OPENSSL options.

Reported by: Andrei V. Lavreniyuk <andy.lavr@reactor-xg.kiev.ua>

r207343:

Don't assume that "resource" property is in metadata.

Reported by: Mikolaj Golub <to.my.trociny@gmail.com>

r207345:

Use WEXITSTATUS() to obtain real exit code.

r207347:

Mark temporary issues as such.

r207348:

Restart worker thread only if the problem was temporary.
In case of persistent problem we don't want to loop forever.

r207371:

Fix a problem where hastd will stuck in recv(2) after sending request to
secondary, which died between send(2) and recv(2). Do it by adding timeout
to recv(2) for primary incoming and outgoing sockets and secondary outgoing
socket.

Reported by: Mikolaj Golub <to.my.trociny@gmail.com>
Tested by: Mikolaj Golub <to.my.trociny@gmail.com>

r207372:

- Check if the worker process was killed by signal and restart it.
- Improve logging.

Pointed out by: Garrett Cooper <yanefbsd@gmail.com>

r207390:

Default connection timeout is way too long. To make it shorter we have to
make socket non-blocking, connect() and if we get EINPROGRESS, we have to
wait using select(). Very complex, but I know no other way to define
connection timeout for a given socket.

Reported by: hiroshi@soupacific.com

git-svn-id: svn://svn.freebsd.org/base/stable/8@207479 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
14 files changed:
sbin/hastd/Makefile
sbin/hastd/hast.conf.5
sbin/hastd/hast.h
sbin/hastd/hast_proto.c
sbin/hastd/hastd.c
sbin/hastd/metadata.c
sbin/hastd/parse.y
sbin/hastd/primary.c
sbin/hastd/proto.c
sbin/hastd/proto.h
sbin/hastd/proto_common.c
sbin/hastd/proto_tcp4.c
sbin/hastd/secondary.c
sbin/hastd/token.l