1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22 /* 23 * Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved 24 * 25 * module: 26 * messages.h 27 * 28 * purpose: 29 * contins defines for all localizable messages 30 * 31 * notes: 32 * unless otherwise specified, all %s arguments can be assumed 33 * to be file names. Non-obvious arguments are explained in 34 * comments. 35 */ 36 37 #ifndef _MESSAGES_H 38 #define _MESSAGES_H 39 40 #pragma ident "%W% %E% SMI" 41 42 #ifdef __cplusplus 43 extern "C" { 44 #endif 45 46 #include <libintl.h> 47 48 /* 49 * summary output messages 50 */ 51 #define SUM_hd "RECONCILE %s and %s (%d files)\n" 52 #define SUM_dst "\t-> %4d copies, %4d deletes, %4d ownership\n" 53 #define SUM_src "\t<- %4d copies, %4d deletes, %4d ownership\n" 54 #define SUM_unresolved "\tUNRESOLVED CONFLICTS: %d\n" 55 56 /* 57 * verbose mode analysis commentary 58 */ 59 #define V_nomore "# file %s no longer exists\n" 60 #define V_deleted "# file %s deleted from %s\n" /* src/dst */ 61 #define V_created "# file %s created on %s\n" /* src/dst */ 62 #define V_delconf "# file %s has been deleted and changed\n" 63 #define V_trunconf "# file %s has been truncated and changed\n" 64 #define V_unchanged "# file %s has two identical versions\n" 65 #define V_different "# file %s has two different versions\n" 66 #define V_modes "# file %s has changed modes/ownership\n" 67 #define V_changed "# file %s has been modified\n" 68 #define V_renamed "# file %s has been renamed to %s\n" 69 #define V_prunes "# %d stale entries pruned from baseline\n" 70 #define V_nostat "# WARNING: unable to stat file %s\n" 71 #define V_change "# WARNING: file %s on %s, was <%ld,%ld>#%ld, now <%ld,%ld>#%ld\n" 72 #define V_suppressed "# file %s not reconciled due to halt-on-error\n" 73 74 /* 75 * usage messages 76 */ 77 #define ERR_usage "Usage:" 78 #define USE_a "always check for Access Control Lists" 79 #define USE_e "everything must agree (modes, owner, group)" 80 #define USE_h "halt immediately after a file propagation error" 81 #define USE_m "modification times should be preserved" 82 #define USE_n "no touch (do not change any files)" 83 #define USE_q "quiet (do not list reconciliation commands)" 84 #define USE_v "verbose (commentary on each changed file)" 85 #define USE_y "yes (do not prompt for confirmations)" 86 #define USE_s "source directory for new rules" 87 #define USE_d "destination directory for new rules" 88 #define USE_r "restrict reconciliation to specified directories" 89 #define USE_f "force conflicts to resolve in favor of src/dst/old/new" 90 #define USE_o "one-way: only propagate changes from src/dst" 91 92 /* 93 * These are the basic usage scenario line, and in most cases should not 94 * be translated. 95 */ 96 #define USE_simple "[-mnqv] -s dir -d dir file ..." 97 #define USE_all "[-aehmnqvy] [-r dir] [-f src/dst/old/new] [-o src/dst]" 98 99 /* 100 * error messages 101 */ 102 #define ERR_open "ERROR: cannot open %s file %s\n" 103 #define ERR_creat "ERROR: unable to create %s file %s\n" 104 #define ERR_write "ERROR: write error in %s file %s\n" 105 #define ERR_fclose "ERROR: error in flushing and closing %s file %s\n" 106 #define ERR_chdir "ERROR: unable to chdir to %s\n" 107 #define ERR_rename "ERROR: unable to rename %s file %s to %s\n" 108 #define ERR_lock "ERROR: unable to lock %s file %s\n" 109 /* 110 * first %s argument is "rules" or "baseline" 111 */ 112 #define ERR_badinput "ERROR: invalid input at line %d, %s in %s\n" 113 /* 114 * first %s argument is a the name of the offending 115 * field (e.g. "mode" or "major dev"). The last 116 * %s argument is the name of the file being 117 * processed. 118 */ 119 #define ERR_badver "ERROR: bad version (%d.%d) found in %s file %s\n" 120 /* 121 * second %s is "rules" or "baseline" 122 * last %s is file name 123 */ 124 125 126 #define ERR_nocwd "ERROR: unable to get working directory for %s\n" 127 #define ERR_longname "ERROR: excessively long name %s\n" 128 #define ERR_undef "ERROR: undefined variable %s\n" 129 #define ERR_deep "ERROR: directory tree is too deep at directory %s\n" 130 131 #define ERR_badopt "ERROR: unrecognized option -%c %s\n" 132 /* 133 * the %c argument is the offending flag 134 * (e.g. -f or -o) and the %s is the argument 135 * that followed it. 136 */ 137 138 #define ERR_nofsync "ERROR: unable to find rule and baseline files\n" 139 #define ERR_badbase "ERROR: invalid BASE directory %s\n" 140 #define ERR_nosrc "ERROR: no source directory specified\n" 141 #define ERR_nodst "ERROR: no destination directory specified\n" 142 #define ERR_nonames "ERROR: no file/directory names specified and no rules file found\n" 143 #define ERR_tomany "ERROR: only %d -r arguments allowed\n" 144 #define ERR_rdwri "ERROR: cannot read/write file %s\n" 145 #define ERR_dirwac "ERROR: cannot create files in directory %s\n" 146 #define ERR_nomem "ERROR: unable to allocate memory for %s\n" 147 /* 148 * the %s argument is the name of a data structure 149 * that could not be allocated. It is only useful 150 * for telling the support person over the phone. 151 */ 152 153 #define ERR_badrun "ERROR: bad exit code from %s\n" 154 /* 155 * argument is a command from the rules file 156 */ 157 158 #define ERR_cannot "ERROR: %s %s\n" 159 /* 160 * The first %s argument will be a PROB_ string. 161 * The second %s argument is the file we were 162 * trying to do it to. 163 */ 164 165 #define ERR_abort_h "ERROR: aborting because of propagation failure\n" 166 167 #define WARN_ignore "WARNING: ignoring LIST rule for %s (illegal '.', '..', or '/')\n" 168 #define WARN_noacls "WARNING: ACLs are not supported for file %s\n" 169 #define WARN_deletes "WARNING: this operation might delete %d files\n" 170 #define WARN_rmdirs "WARNING: operation might delete %d non-empty directories\n" 171 #define WARN_ichange "WARNING: %d listed directories have changed Inode #s\n" 172 #define WARN_proceed "Press Enter to confirm, or interrupt to abort\n" 173 #define WARN_super "NOTE: there are ownership and protection conflicts that can only be\n resolved by the super user\n" 174 175 /* 176 * descriptions of problems in unreconcilable files 177 */ 178 #define PROB_del_change "deleted and changed" 179 #define PROB_different "two different versions" 180 #define PROB_ownership "different owners" 181 #define PROB_protection "different protections" 182 #define PROB_prohibited "blocked by -o switch" 183 #define PROB_aborted "aborted by -h switch" 184 185 #define PROB_chown "unable to chown" 186 #define PROB_chgrp "unable to chgrp" 187 #define PROB_chmod "unable to chmod" 188 #define PROB_chacl "unable to setfacl" 189 #define PROB_link "unable to link" 190 #define PROB_unlink "unable to unlink" 191 #define PROB_rmdir "unable to rmdir" 192 #define PROB_copy "unable to copy" 193 #define PROB_mknod "unable to mknod" 194 #define PROB_mkdir "unable to mkdir" 195 #define PROB_readlink "unable to read symlink" 196 #define PROB_symlink "unable to create symlink" 197 #define PROB_restat "unable to stat/restat" 198 #define PROB_deal "unable to deal with" 199 #define PROB_copyin "unable to open changed file" 200 #define PROB_copyout "unable to create new file" 201 #define PROB_botch "unable to safely setfacl" 202 #define PROB_rename "unable to rename" 203 #define PROB_rename2 "unable to rename/create" 204 #define PROB_read "read error" 205 #define PROB_write "write error" 206 #define PROB_space "insufficient space to copy" 207 208 209 /* 210 * text snippets 211 */ 212 #define TXT_src "source" /* for WARN_change */ 213 #define TXT_dst "destination" /* for WARN_change */ 214 #define TXT_srcdst "missing source/destination" /* for ERR_bad_input */ 215 #define TXT_noargs "missing arguments" /* for ERR_bad_input */ 216 #define TXT_badver "invalid version number" /* for ERR_bad_input */ 217 #define TXT_nobase "LIST without a BASE" /* for ERR_bad_input */ 218 #define TXT_rules "rules" /* for ERR_bad_ver */ 219 #define TXT_base "baseline" /* for ERR_bad_ver */ 220 221 #ifdef __cplusplus 222 } 223 #endif 224 225 #endif /* _MESSAGES_H */