Martin gave his approval to use GPLv3 with this code.
[rsync/rsync.git] / errcode.h
CommitLineData
af642a61 1/*
0f78b815
WD
2 * Error codes returned by rsync.
3 *
4 * Copyright (C) 1998-2000 Andrew Tridgell
ba2133d6 5 * Copyright (C) 2003-2007 Wayne Davison
0f78b815
WD
6 *
7 * This program is free software; you can redistribute it and/or modify
4fd842f9 8 * it under the terms of the GNU General Public License version 3 as
ba2133d6 9 * published by the Free Software Foundation.
0f78b815
WD
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
e7c67065 16 * You should have received a copy of the GNU General Public License along
4fd842f9 17 * with this program; if not, visit the http://fsf.org website.
af642a61 18 */
65417579 19
0f78b815
WD
20/* If you change these, please also update the string mappings in log.c and
21 * the EXIT VALUES in rsync.yo. */
22
56cf38ac 23#define RERR_OK 0
65417579
AT
24#define RERR_SYNTAX 1 /* syntax or usage error */
25#define RERR_PROTOCOL 2 /* protocol incompatibility */
26#define RERR_FILESELECT 3 /* errors selecting input/output files, dirs */
e0ed4e40 27#define RERR_UNSUPPORTED 4 /* requested action not supported */
088aac85 28#define RERR_STARTCLIENT 5 /* error starting client-server protocol */
65417579
AT
29
30#define RERR_SOCKETIO 10 /* error in socket IO */
31#define RERR_FILEIO 11 /* error in file IO */
32#define RERR_STREAMIO 12 /* error in rsync protocol data stream */
33#define RERR_MESSAGEIO 13 /* errors with program diagnostics */
34#define RERR_IPC 14 /* error in IPC code */
60168410 35#define RERR_CRASHED 15 /* sibling crashed */
90eca40d 36#define RERR_TERMINATED 16 /* sibling terminated abnormally */
65417579 37
9e90555f
WD
38#define RERR_SIGNAL1 19 /* status returned when sent SIGUSR1 */
39#define RERR_SIGNAL 20 /* status returned when sent SIGINT, SIGTERM, SIGHUP */
65417579
AT
40#define RERR_WAITCHILD 21 /* some error returned by waitpid() */
41#define RERR_MALLOC 22 /* error allocating core memory buffers */
19b27a48 42#define RERR_PARTIAL 23 /* partial transfer */
e0ed4e40 43#define RERR_VANISHED 24 /* file(s) vanished on sender side */
821ff7f4 44#define RERR_DEL_LIMIT 25 /* skipped some deletes due to --max-delete */
65417579
AT
45
46#define RERR_TIMEOUT 30 /* timeout in data send/receive */
19b27a48
AT
47
48/* Although it doesn't seem to be specified anywhere,
49 * ssh and the shell seem to return these values:
50 *
51 * 124 if the command exited with status 255
52 * 125 if the command is killed by a signal
53 * 126 if the command cannot be run
54 * 127 if the command is not found
55 *
56 * and we could use this to give a better explanation if the remote
57 * command is not found.
58 */
59#define RERR_CMD_FAILED 124
60#define RERR_CMD_KILLED 125
61#define RERR_CMD_RUN 126
62#define RERR_CMD_NOTFOUND 127