Commit message (Collapse)AuthorAgeFilesLines
* Bump version for new buildv1.16-1Nate Straz2008-09-231-1/+5
* Update copyright dates.Nate Straz2008-09-237-7/+7
* Switch to using a select with a timeout instead of a loopNate Straz2008-09-232-16/+21
| | | | | | of recvfroms and sleeps in btime(). This makes it easier to tune how long to wait for a heartbeat. Now I can get heartbeats over my vpn connection.
* Reduce the amount of rounding. Since btimed doesn't go away anymore, we ↵Nate Straz2008-09-231-2/+2
| | | | don't need to round so much.
* Bump qarsh version for next buildv1.15-1Nate Straz2008-09-231-1/+4
* We need to reset the signal handlers and sigmask so the raise() works.Nate Straz2008-09-231-0/+21
* Bump the version for the next build.v1.14-1Nate Straz2008-09-231-1/+4
* Every time btimed is restarted we could get a slightly different boot time.Nate Straz2008-09-231-7/+2
| | | | | | | | qarsh is the primary user of btimed, but it only sends a btime request when it hasn't received output for 5 seconds. If output is streaming for more than 30 seconds, btimed would exit. When the output quiets down again and btimed starts up, it could get a slightly different uptime and round in the opposite direction.
* Get ready for a new build to include the per_source config setting.v1.13-1Nate Straz2008-09-231-1/+4
* Add the ability to tag builds for different distros. Just create theNate Straz2008-09-232-3/+8
| | | | source rpm with "make srpm DIST=.el5" and build it with brew.
* Don't limit the number of qarsh connections from any system.Nate Straz2008-09-231-0/+1
* We don't need to "sanitize" the hbeat if we didn't get one.Nate Straz2008-09-231-1/+2
| | | | Hopefully we'll get one before the system is declared down.
* Push processing of the remote command status to main() so it can beNate Straz2008-09-231-9/+10
| | | | | reproduced properly by qarsh. Return 127 as an exit code on internal error cases.
* -lxml2 should be passed directly to the link command so make doesn't tryNate Straz2008-09-231-3/+4
| | | | | to expand it. If both i386 and x86_64 -devel packages are installed, make was trying to link in /usr/lib/ instead of /usr/lib64...
* Bump version for a new buildv1.12-1Nate Straz2008-09-231-1/+4
* Cast off_t variables to long long int when printing so we don't get theNate Straz2008-09-233-14/+16
| | | | | | | | ugly warnings. We should always be compiling with 64-bit off_t's so this should not be a problem. Change nread and nwrote back to ssize_t's since that is what read and write return. nleft remains an off_t because we initialize to stat.st_size.
* sendfile() can only send about 2GB, but you can keep calling it untilNate Straz2008-09-231-2/+4
| | | | everything is sent.
* Use off_t instead of size_t so we can transfer files larger than 2GB.Nate Straz2008-09-235-19/+20
| | | | | | I changed all formats from %zd to %lld, but this adds a lot of warnings because off_t isn't the same as long long int to the compiler. I don't know if there is a way to avoid the warnings on all platforms.
* Add fallback to read/write when sendfile doesn't work.Nate Straz2008-09-231-0/+31
* Use time() - times() instead of reading /proc/stat.Nate Straz2008-09-231-20/+7
* Add copyright notices and GPL headerNate Straz2008-09-2315-1/+275
* When no args were given, argv[0] would return NULL and the programNate Straz2008-09-231-7/+6
| | | | | name in the usage output would show "(null)." qarsh isn't called anything else so just hard code qarsh in the usage message.
* Add a check when the btime changes to make sure we're getting consistentNate Straz2008-09-231-1/+11
| | | | | btime values. If we get a different value right way, toss them both and use the next one.
* Bump version for btime retry adjustmentv1.11-1Nate Straz2008-09-231-1/+4
* After doing some debugging with the fleas, it turns out we're notNate Straz2008-09-232-3/+4
| | | | | | | waiting around long enough for the heartbeat response to come back. Since we only heartbeat when there isn't any output (in qarsh), taking up to a second won't hurt. After doing some tests I'm changing the recvfrom to recvfrom sleep to 1000 usec and retrying up to 40 times.
* Force the cookie parts to be 32 bits to make Dean happy.Nate Straz2008-09-232-3/+3
* Set the random seed so all qarsh processes don't generate the sameNate Straz2008-09-232-0/+3
| | | | sequence of cookies.
* Add cookies to the heartbeat packet for added safety.v1.10-1Nate Straz2008-09-234-21/+71
| | | | | | | | | Two factors forced this change. 1. ports were being re-used so quickly that we could get lingering packets from past hosts when getting the btime for a new host. 2. We can't control which IP a btime response is sent from if a system has more than one interface. Adding a cookie allows us to know that a response came from whom we sent it.
* Add some more logging to try to nail the false reboot bug.Nate Straz2008-09-232-1/+8
* Fix a minor whitespace issueNate Straz2008-09-231-2/+2
* Bump version for a new buildv1.9-2Nate Straz2008-09-231-1/+4
* Add some checking to see if we get responses from someone we shouldn't be.Nate Straz2008-09-231-2/+34
* Bump the version for the latest fixesv1.9-1Nate Straz2008-09-231-1/+5
* rsync puts the hostname before the -l <user> arg so we need to act more likeNate Straz2008-09-231-4/+19
| | | | | | OpenSSH. After they get to the end of the args and they haven't gotten a host name yet they chew the next arg as the hostname and restart parsing the command line. Now we do too.
* Use the same size buffer for holding the send packet as the receive packet.Nate Straz2008-09-231-2/+2
* Add an option, -r, to get a readable boot timeNate Straz2008-09-231-7/+30
| | | | | Convert to getopt Allow multiple hosts on the command line
* Bump qarsh version for btimed bug fixv1.8-1Nate Straz2008-09-231-1/+4
* Bail out if our recvfrom fails due to alarm or error -- client side resends ↵Dean Jansa2008-09-231-0/+7
| | | | requests so no need to retry in server
* Doc the QARSH_TIMEOUT env varDean Jansa2008-09-231-0/+1
* Bump version numberv1.7-1Nate Straz2008-09-231-1/+4
* Make error messages more useful when there are connection issuesNate Straz2008-09-231-4/+11
* Add a function to get the max timeout value from a heartbeat handle.Nate Straz2008-09-232-0/+7
* Reorganized heartbeat state machine to be move explicit.Nate Straz2008-09-231-20/+28
| | | | Don't set last_rhost_btime until after we've checked for a reboot.
* Bump version of qarsh for btimed changesv1.6-1Nate Straz2008-09-231-1/+4
* Keep btimed around to hand out btime packets until no one has asked for oneNate Straz2008-09-232-10/+20
| | | | | | in 30 seconds. Fix the servce name in the btimed xinetd config file
* Add a newline to the no heartbeat messageNate Straz2008-09-231-1/+1
* Bump version for isatty changev1.5-1Nate Straz2008-09-231-1/+1
* Instead of ignoring SIGTTIN, ignore stdin if it is a tty.Nate Straz2008-09-231-7/+5
* Bump version, the SIGTTIN stuff is probably a bigger issue than originally ↵v1.4-1Nate Straz2008-09-231-2/+2
| | | | thought
* Add a srpm targetNate Straz2008-09-231-0/+3