00001 /* -*- c-file-style: "linux"; -*- 00002 00003 Copyright (C) 1998-2000 by Andrew Tridgell 00004 00005 This program is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00018 */ 00019 00020 /* 00021 * error codes returned by rsync. If you change these, please also update the 00022 * string mappings in log.c and the EXIT VALUES in rsync.yo 00023 */ 00024 00025 #define RERR_OK 0 00026 #define RERR_SYNTAX 1 /* syntax or usage error */ 00027 #define RERR_PROTOCOL 2 /* protocol incompatibility */ 00028 #define RERR_FILESELECT 3 /* errors selecting input/output files, dirs */ 00029 #define RERR_UNSUPPORTED 4 /* requested action not supported */ 00030 #define RERR_STARTCLIENT 5 /* error starting client-server protocol */ 00031 00032 #define RERR_SOCKETIO 10 /* error in socket IO */ 00033 #define RERR_FILEIO 11 /* error in file IO */ 00034 #define RERR_STREAMIO 12 /* error in rsync protocol data stream */ 00035 #define RERR_MESSAGEIO 13 /* errors with program diagnostics */ 00036 #define RERR_IPC 14 /* error in IPC code */ 00037 #define RERR_CRASHED 15 /* sibling crashed */ 00038 #define RERR_TERMINATED 16 /* sibling terminated abnormally */ 00039 00040 #define RERR_SIGNAL1 19 /* status returned when sent SIGUSR1 */ 00041 #define RERR_SIGNAL 20 /* status returned when sent SIGINT, SIGTERM, SIGHUP */ 00042 #define RERR_WAITCHILD 21 /* some error returned by waitpid() */ 00043 #define RERR_MALLOC 22 /* error allocating core memory buffers */ 00044 #define RERR_PARTIAL 23 /* partial transfer */ 00045 #define RERR_VANISHED 24 /* file(s) vanished on sender side */ 00046 #define RERR_DEL_LIMIT 25 /* skipped some deletes due to --max-delete */ 00047 00048 #define RERR_TIMEOUT 30 /* timeout in data send/receive */ 00049 00050 /* Although it doesn't seem to be specified anywhere, 00051 * ssh and the shell seem to return these values: 00052 * 00053 * 124 if the command exited with status 255 00054 * 125 if the command is killed by a signal 00055 * 126 if the command cannot be run 00056 * 127 if the command is not found 00057 * 00058 * and we could use this to give a better explanation if the remote 00059 * command is not found. 00060 */ 00061 #define RERR_CMD_FAILED 124 00062 #define RERR_CMD_KILLED 125 00063 #define RERR_CMD_RUN 126 00064 #define RERR_CMD_NOTFOUND 127