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