diff options
author | Mattias Andrée <maandree@member.fsf.org> | 2015-12-23 23:00:20 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@member.fsf.org> | 2015-12-23 23:00:20 +0100 |
commit | fdcbff77ef0599f97d303c68b5a7e2b4672712ed (patch) | |
tree | cd65cc30c99ba8b354196a35abe638a86c7af34d | |
parent | implement satq and satr, just sends a command (diff) | |
download | sat-fdcbff77ef0599f97d303c68b5a7e2b4672712ed.tar.gz sat-fdcbff77ef0599f97d303c68b5a7e2b4672712ed.tar.bz2 sat-fdcbff77ef0599f97d303c68b5a7e2b4672712ed.tar.xz |
satrm
Signed-off-by: Mattias Andrée <maandree@member.fsf.org>
-rw-r--r-- | src/satrm.c | 44 |
1 files changed, 43 insertions, 1 deletions
diff --git a/src/satrm.c b/src/satrm.c index 7c257ed..36a8b26 100644 --- a/src/satrm.c +++ b/src/satrm.c @@ -19,12 +19,54 @@ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. */ +#include <stdio.h> +#include <stdlib.h> +#include <errno.h> +#include "client.h" + +/** + * The name of the process. + */ +char *argv0 = "satrm"; + + + +/** + * Print usage information. + */ +static void +usage(void) +{ + fprintf(stderr, "usage: %s JOB-ID\n", + strrchr(argv0) ? (strrchr(argv0) + 1) : argv0); + exit(2); +} + + +/** + * Remove a job from the queue of jobs. + * + * @param argc Should be 2. + * @param argv The command line, should only include the name + * of the process and the ID of the job to remove. + * @return 0 The process was successful. + * @return 1 The process failed queuing the job. + * @return 2 User error, you do not know what you are doing. + * @return 3 satd(1) failed. + */ int main(int argc, char *argv[]) { - /* TODO remove a job from the queue */ + if (argc != 2) { + usage(); + } + argv0 = argv[0]; + + if (send_command(0, argv[1])) + return errno ? (perror(argv0), 1) : 3; + return 0; } |