summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make sure qarsh waits for all output from the remote host.Nate Straz2008-09-231-1/+1
|
* Bump version to include new features.v1.17-1Nate Straz2008-09-231-2/+7
|
* Fix up copyright dates.Nate Straz2008-09-232-2/+2
|
* Add write file descriptors to main select() call.Nate Straz2008-09-231-21/+35
| | | | | | | | When running rsync on an existing directory structure, rsync may be too busy to read everything that qarsh is writing to it from the remote rsync daemon. Create a buffer for each of stdin, stdout, and stderr and keep it around until we are able to write it, holding off further reads until it can be written. We still don't handle partial writes.
* Don't print out the debug syslog messages unless you also use the -d option.Nate Straz2008-09-231-3/+8
| | | | For those that can't configure syslog properly while debugging other things.
* Nate made a good point, we should not fail if we can't chdir. ssh warns, ↵Dean Jansa2008-09-231-5/+1
| | | | but lets you in. Don't bother checking the return of chdir().
* chdir() to users home dirDean Jansa2008-09-231-0/+8
|
* We don't need to check the heartbeat anymore when the commandNate Straz2008-09-231-4/+2
| | | | has exitted and we've processed all the output.
* Increase the buffer size we use to read output from the host. This shouldNate Straz2008-09-231-6/+7
| | | | | help get all output before we exit. There is still a race if the cmdexit packet returns before all output where we could truncate output.
* Try to reduce the number of times we look up a hostname by storingNate Straz2008-09-231-1/+15
| | | | the address in the hbeat struct instead of the name.
* Add libxml2-devel requires since it seems to be missing from the RHEL5 buildv1.16-2Nate Straz2008-09-231-1/+2
| | | | roots.
* 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/libxml2.so 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
|