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