/* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _PKGADM_MSGS_H #define _PKGADM_MSGS_H #include #ifdef __cplusplus extern "C" { #endif #ifdef lint #define gettext(x) x #endif /* generic messages */ #define MSG_BAD_SUB gettext(\ "\"%s\" is not a valid subcommand") #define MSG_MISSING_OPERAND gettext(\ "-%c requires an operand") #define MSG_USAGE gettext(\ "usage:\n" \ "\n" \ "pkgadm addcert [-ty] [-a app] [-k keystore] [-e keyfile]\n" \ "\t[-f format] [-n name] [-P passarg] [-p input_passarg]\n" \ "\t[-R rootpath] certfile\n" \ "\n" \ "\t- Adds a trusted CA certificate or user certificate\n" \ "\tand private key\n" \ "\n" \ "pkgadm removecert [-a app] [-k keystore] -n name [-P passarg]\n" \ "\t[-R rootpath]\n" \ "\n" \ "\t- Removes a trusted CA certificate or user certificate\n" \ "\tand private key\n" \ "\n" \ "pkgadm listcert [-a app] [-f format] [-k keystore] -n name\n" \ "\t[-P passarg] [-o outfile] [-R rootpath]\n" \ "\n" \ "\t- Prints trusted CA certificates or user certificates\n" \ "\n" \ "pkgadm dbstatus [-R rootpath]\n" \ "\n" \ "\t- Returns 'text' - the text install database in use since Solaris 2.0\n" \ "\t is the current install database in use.\n" \ "\n" \ "pkgadm sync [-R rootpath] [-q]\n" \ "\n" \ "\t- Writes the contents file and rolls the contents log file.\n" \ "\t- Optionally forces the contents file server to quit [-q].\n" \ "\n" \ "pkgadm -V\n" \ "\t- Displays packaging tools version\n" \ "\n" \ "pkgadm -?\n" \ "\t- Shows this help message\n") #define MSG_WARNING gettext(\ "WARNING") #define MSG_ERROR gettext(\ "ERROR") #define MSG_T_OPTION_ARGS gettext(\ "-t option takes 2 or 3 arguments, not %d!\n") #define MSG_T_RESULT_TWO gettext(\ "result <%d>: <%s> ~= <%s>\n") #define MSG_T_RESULT_THREE gettext(\ "required <%d> actual <%d> <%30s> ~- <%30s>\n") #define MSG_KEYSTORE_PASSPROMPT gettext(\ "Enter Keystore Password: ") #define MSG_KEYSTORE_PASSOUTPROMPT gettext(\ "Type a Keystore protection Password.\n" \ "Press ENTER for no protection password (not recommended): ") #define MSG_PEM_PASSPROMPT gettext(\ "Enter PEM Passphrase: ") #define MSG_ERROR gettext(\ "ERROR") /* warnings */ #define CREATE_PKGDIR_WARN gettext(\ "Creating directory <%s>\n") #define MSG_WRN_UNKNOWN gettext(\ "Signer <%s> has unsupported signature, ignoring") #define MSG_VALID_STALE gettext(\ "Removing stale lock on <%s> pid <%ld> zid <%ld>") /* errors */ #define MSG_FATAL gettext(\ "Fatal Error") #define MSG_TOO_LONG gettext(\ "Length of <%s> exceeds maximum allowed length") #define MSG_INTERNAL gettext(\ "Intenal Error <%s>") #define MSG_OPEN gettext(\ "Cannot open <%s> for reading") #define MSG_OPEN_WRITE gettext(\ "Cannot open <%s> for writing") #define MSG_BAD_PASSARG gettext(\ "Invalid password retrieval method <%s>") #define MSG_BAD_PASS gettext(\ "Invalid password") #define ERR_LOG_FAIL gettext(\ "Failed to log message using format <%s>") #define MSG_BAD_FORMAT gettext(\ "Invalid format: <%s>") #define MSG_USER_NAME gettext(\ "An alias is required when adding user certificates") #define MSG_TRUSTED_NAME gettext(\ "Trusted certificates cannot have an explicit alias") #define MSG_MULTIPLE_TRUST gettext(\ "Found multiple certificates in <%s>. You must explicitly trust " \ "them using <%s>") #define MSG_NO_MULTIPLE_TRUST gettext(\ "Found multiple certificates in <%s>. You must explicitly trust " \ "them using <%s>") #define MSG_TRUSTED_KEY gettext(\ "Cannot supply private key when adding trusted certificates") #define MSG_TRUST_KEY_FOUND gettext(\ "One or more private keys were found in trusted certificate file <%s>") #define MSG_ADDCERT_ABORT gettext(\ "Addition of trusted certificate aborted by user request") #define MSG_NEED_KEY gettext(\ "No private key found in <%s>, must specify one with -e") #define MSG_NO_PRIVKEY gettext(\ "No private key found in <%s>") #define MSG_NO_CERTS gettext(\ "No certificates found in <%s>") #define MSG_MULTIPLE_CERTS gettext(\ "Multiple certificates found in <%s>") #define MSG_NO_ADDCERT gettext(\ "Cannot add certificate(s) from <%s>. No changes have been made.") #define MSG_NO_ADDKEY gettext(\ "Cannot add private key from <%s>. No changes have been made.") #define MSG_NO_REMOVECERT gettext(\ "Cannot remove certificate with alias <%s>") #define MSG_VERIFY_TRUST gettext(\ "Are you sure you want to trust this certificate? ") #define MSG_VERIFY_NOT_CA gettext(\ "\n" \ "This certificate does not appear to be issued and signed\n" \ "by a certificate authority (CA). CA Certificates are normally\n" \ "self-signed and have CA Basic Constraints.\n" \ "Are you sure you want to trust this certificate? ") #define MSG_PARSE gettext(\ "Parsing error") #define MSG_TRUSTED gettext(\ "Certificate(s) from <%s> are now trusted") #define MSG_TRUSTING gettext(\ "Trusting certificate <%s>") #define MSG_ADDED gettext(\ "Successfully added Certificate <%s> with alias <%s>") #define MSG_REMOVED gettext(\ "Successfully removed Certificate(s) with alias <%s>") #define MSG_MEM gettext(\ "Out of memory") #define MSG_PRINT gettext(\ "Cannot print certificates to <%s>") #define MSG_PROBLEM_CONVERT gettext(\ "Does %s/var/sadm exist? Can the user write to it? (%s)") #define MSG_CONTENTS_FORMAT gettext(\ "Operation failed due to corrupted install contents data file.") #define MSG_MKDIR_FAILED gettext(\ "Could not mkdir for path %s. %s.") #define MSG_RENAME_FAILED gettext(\ "Could not rename %s to %s\n%s") #define MSG_REMOVE_FAILED gettext(\ "Could not remove %s\n%s") #define MSG_FILE_ACCESS gettext(\ "Operation failed: unable to access file %s: %s") #define MSG_NOT_READABLE gettext(\ "Operation failed: unable to read file %s") #define MSG_PATCH_UPGD gettext(\ "Operation failed: unable to process patch information\n") #define MSG_BUILD_INDEXES gettext(\ "Operation failed: unable to build indexes\n") #define MSG_FILE_NAME_TOO_LONG gettext(\ "Operation failed: file name too long: %s\n") #define MSG_ZONES_MISSING_REQUEST gettext(\ "Must specify operation to perform\n") #define MSG_LOCK_ALTROOT_CANTCREATE gettext(\ "lock: cannot create alternative root directory <%s>: %s\n") #define MSG_LOCK_ALTROOT_NONEXIST gettext(\ "lock: argument to -R <%s> is not a directory: %s\n") #define MSG_LOCK_ROOTDIR_INVALID gettext(\ "lock: lock file base directory <%s> not valid: %s\n") #define MSG_LOCK_WFLAG_BADINT gettext(\ "The integer value <%s> given to the -W option includes an " \ "invalid character: \"%c\"\n") #define MSG_LOCK_pFLAG_BADINT gettext(\ "The integer value <%s> given to the -p option includes an " \ "invalid character: \"%c\"\n") #define MSG_LOCK_zFLAG_BADINT gettext(\ "The integer value <%s> given to the -z option includes an " \ "invalid character: \"%c\"\n") #define MSG_LOCK_nFLAG_BADINT gettext(\ "The integer value <%s> given to the -n option includes an " \ "invalid character: \"%c\"\n") #define MSG_LOCK_ar_TOGETHER gettext(\ "lock: The -a and -r options cannot be used together: "\ "specify only one.\n") #define MSG_LOCK_kARG_TOOLONG gettext(\ "Argument to -k is <%d> characters: may not exceed <%d> characters\n") #define MSG_LOCK_oARG_TOOLONG gettext(\ "Argument to -o is <%d> characters: may not exceed <%d> characters\n") #define MSG_LOCK_RARG_NOT_ABSOLUTE gettext(\ "Argument to -R must be absolute path: %s") #define MSG_LOCK_WFLAG_ERROR gettext(\ "Argument to -W has problem with wait interval <%s>: %s") #define MSG_LOCK_pFLAG_ERROR gettext(\ "Argument to -p has problem with process i.d. value <%s>: %s") #define MSG_LOCK_zFLAG_ERROR gettext(\ "Argument to -p has problem with zone i.d. value <%s>: %s") #define MSG_LOCK_nFLAG_ERROR gettext(\ "Argument to -n has problem with maximum number of retries " \ "value <%s>: %s") #define MSG_LOCK_es_TOGETHER gettext(\ "lock: The -e and -s options cannot be used together: "\ "specify only one.\n") #define MSG_LOCK_ak_TOGETHER gettext(\ "lock: The -k option cannot be used with the -a option.\n") #define MSG_LOCK_e_without_a gettext(\ "lock: The -e option can only be used with the -a option.\n") #define MSG_LOCK_s_without_a gettext(\ "lock: The -s option can only be used with the -a option.\n") #define MSG_LOCK_ACQUIRE_KEYMISMATCH gettext(\ "cannot acquire %s lock on <%s>: object locked and specified key " \ "does not match") #define MSG_LOCK_ACQUIRE_ERROR gettext(\ "cannot determine if object <%s> key <%s> is locked: %s") #define MSG_LOCK_ACQUIRE_TIMEDOUT gettext(\ "cannot acquire %s lock on <%s> key <%s>: object locked, no key " \ "was specified, and the wait timed out") #define MSG_LOCK_ACQUIRE_WAITING gettext(\ "object <%s> is locked: waiting for object to become available") #define MSG_LOCK_ACQUIRE_REOPEN_FAILED gettext(\ "cannot reopen lock file after waiting for lock on object " \ "<%s> to be released") #define MSG_LOCK_RELEASE_NOTLOCKED gettext(\ "cannot release lock on <%s> key <%s>: object not locked and " \ "a key was specified") #define MSG_LOCK_RELEASE_LOCKED gettext(\ "cannot release lock on <%s> key <%s>: object locked but no " \ "key was specified") #define MSG_LOCK_RELEASE_NOTFOUND gettext(\ "cannot release lock on <%s> key <%s>: object is not locked") #define MSG_LOCK_RELEASE_KEYMISMATCH gettext(\ "cannot release lock on <%s>: object locked and specified key " \ "does not match") #define MSG_LOCK_RELEASE_ERROR gettext(\ "cannot determine if object <%s> key <%s> is locked") #define MSG_LOCK_EXEC_ACCESS gettext(\ "cannot execute command <%s>: %s") #define MSG_LOCK_EXEC_NOINPUT gettext(\ "cannot open input file <%s>: %s") #define MSG_LOCK_EXEC_NOPIPE gettext(\ "cannot create pipe: %s") #define MSG_LOCK_FINDLOCK_LSEEK_FAILURE gettext(\ "cannot find lock <%s> key <%s>: lseek failure: %s") #define MSG_LOCK_ADDLOCK_PWRITE_FAILURE gettext(\ "cannot create %s lock for object <%s>: pwrite failure: %s") #define MSG_LOCK_ADDLOCK_LSEEK_FAILURE gettext(\ "cannot create %s lock for object <%s>: lseek failure: %s") #define MSG_LOCK_INCLOCK_PWRITE_FAILURE gettext(\ "cannot increment %s lock for object <%s>: pwrite failure: %s") #define MSG_LOCK_DECLOCK_PWRITE_FAILURE gettext(\ "cannot decrement %s lock for object <%s>: pwrite failure: %s") #define MSG_LOCK_DECLOCK_PREAD_FAILURE gettext(\ "cannot decrement %s lock for object <%s>: pread failure: %s") #define MSG_LOCK_DECLOCK_LSEEK_FAILURE gettext(\ "cannot decrement %s lock for object <%s>: lseek failure: %s") #define MSG_LOCK_DECLOCK_FTRUNCATE_FAILURE gettext(\ "cannot decrement %s lock for object <%s>: ftruncate failure: %s") /* * i18n: * next two messages grouped together */ #define MSG_LOCK_ACQUIRE_BUSY_QUASI gettext(\ "cannot acquire %s lock on <%s> key <%s>: object matches wildcard " \ "<%s> lock%s") #define MSG_LOCK_ACQUIRE_BUSY_FIRST gettext(\ "cannot acquire %s lock on <%s> key <%s>: object <%s> is locked <%s>%s") /* * i18n: note this message may be appended to the previous message * by supplying it to the final "%s" at the end of the line above; * that is either: * cannot acquire %s lock on <%s> key <%s>: object is locked <%s> * or: * cannot acquire %s lock on <%s> [...] is locked <%s> and no key specified */ #define MSG_LOCK_ACQUIRE_BUSY_ADDITIONAL gettext(\ " and no key specified") /* * i18n: note these two "messages" are inserted into other * messages, such as: * cannot acquire %s lock on <%s> * will be either: * cannot acquire shared lock on <%s> * or * cannot acquire exclusive lock on <%s> */ #define MSG_LOCK_EXC gettext(\ "exclusive") #define MSG_LOCK_SHR gettext(\ "shared") /* * i18n: note these messages are "debugging" messages and will normally * not be seen unless debugging has been enabled for problem root causing * so they are not meant to be perfectly "human readable" */ #define MSG_VALID_NOPID gettext(\ "validate lock <%s>: VALID (no pid)") #define MSG_VALID_BADZID gettext(\ "validate lock <%s>: VALID (lock zid <%ld> this zid <%ld>)") #define MSG_VALID_ZIDOK gettext(\ "validate lock <%s>: zone i.d.s match (lock zid <%ld> this zid <%ld>)") #define MSG_VALID_OK gettext(\ "validate lock <%s> pid <%ld> path <%s>: VALID") #define MSG_VALID_NOTOK gettext(\ "validate lock <%s> pid <%ld> path <%s>: NOT VALID") #define MSG_LCKMCH_ENTRY gettext(\ "lockMatch: *** BEGIN *** compare objects <%s> <%s>") #define MSG_LCKMCH_FSTNODE gettext(\ "lockMatch: first lock node (%d) <%s>") #define MSG_LCKMCH_SCNDNODE gettext(\ "lockMatch: second lock node (%d) <%s>") #define MSG_LCKMCH_NODES gettext(\ "lockMatch: first lock node <%s> prefix <%s> (%d) second lock " \ " node <%s> prefix <%s> (%d)") #define MSG_LCKMCH_DIRMCH gettext(\ "lockMatch: no prefix direct comparison: match: <%s> <%s>") #define MSG_LCKMCH_DIRNOMCH gettext(\ "lockMatch: no prefix direct comparison: NO MATCH: <%s> <%s>") #define MSG_LCKMCH_PFXMCH gettext(\ "lockMatch: prefix comparison: match: <%s> <%s>") #define MSG_LCKMCH_PFXNOMCH gettext(\ "lockMatch: prefix comparison: NO MATCH: <%s> <%s>") #define MSG_LCKMCH_FSTLCK gettext(\ "lockMatch: first lock index (%d) last scanned node <%s> prefix " \ "<%s> (%d)") #define MSG_LCKMCH_SCNDLCK gettext(\ "lockMatch: second lock index (%d) last scanned node <%s> prefix " \ "<%s> (%d)") #define MSG_LCKMCH_ABSNOMCH gettext(\ "lockMatch: absolute locks: NO MATCH: <%s> <%s>") #define MSG_LCKMCH_OBJMCH gettext(\ "lockMatch: object locks: match: <%s> <%s>") #define MSG_LCKMCH_OVLPNOMCH gettext(\ "lockMatch: nonmatching overlapping objects: <%s> <%s> before " \ "(%d) <%s>") #define MSG_LCKMCH_SAME gettext(\ "lockMatch: locks begin with same node - compare: <%s> <%s> at <%s>") #define MSG_LCKMCH_SCNDSUB gettext(\ "lockMatch: second lock <%s> subset of <%s> at (%d) <%s>") #define MSG_LCKMCH_FRSTSUB gettext(\ "lockMatch: first lock <%s> subset of <%s> at (%d) <%s>") #define MSG_LCKMCH_DONTKNOW gettext(\ "lockMatch: unable to determine how to compare locks: <%s> <%s>: " \ "using direct comparision") #define MSG_LCKMCH_READY gettext(\ "lockMatch: comparing nodes locks <%s> <%s>") #define MSG_LCKMCH_NODEFAIL gettext(\ "lockMatch: node (%d) comparison: NO MATCH: <%s> != <%s>") #define MSG_LCKMCH_NODEOK gettext(\ "lockMatch: node (%d) comparision: match: <%s> == <%s>") #define MSG_LCKMCH_MATCHOK gettext(\ "lockMatch: locks match: <%s> == <%s>") #define MSG_LOCK_EXEC_RESULTS gettext(\ "command <%s> executed: pid <%d> errno <0x%04x> status <0x%04x> " \ "final status <0x%04x> output <%s>") #define MSG_LOCK_GENUID_MAKEUUID gettext(\ "generated new unique key using makeuuid: %s") #define MSG_LOCK_GENUID_INTERNAL gettext(\ "generated new unique key using date: %s") #define MSG_LOCK_DECLOCK_DECING gettext(\ "decrement <%s> lock count record <%d> count <%d>") #define MSG_LOCK_DECLOCK_DONE gettext(\ "decrement lock record <%d> count <%d> object <%s> key <%s>") #define MSG_LOCK_DECLOCK_REMOVE gettext(\ "decrement lock remove record lastPos %ld last record %d " \ "current record %d") #define MSG_LOCK_DECLOCK_LASTONE gettext(\ "decrement lock removing <%s> lock last record <%d> " \ "truncating to <%ld>") #define MSG_LOCK_DECLOCK_REMOVING gettext(\ "decrement lock removing record <%d> last record <%d> " \ "truncating to <%ld>") #define MSG_LOCK_INCLOCK_ENTRY gettext(\ "increment <%s> lock count record <%d> count <%d>") #define MSG_LOCK_INCLOCK_DONE gettext(\ "increment lock record <%d> count <%d> object <%s> key <%s>") #define MSG_LOCK_ADDLOCK_ADDING gettext(\ "adding %s lock pos <%d> object <%s> key <%s> pid <%ld> zid <%ld>") #define MSG_LOCK_FINDLOCK_ENTRY gettext(\ "find lock object <%s> key <%s>") #define MSG_LOCK_FINDLOCK_READRECORD gettext(\ "find lock read record <%d>: count <%d> object <%s> key <%s> pid " \ "<%ld> zid <%ld>") #define MSG_LOCK_FINDLOCK_FOUND gettext(\ "find lock record found") #define MSG_LOCK_FINDLOCK_NOTFOUND gettext(\ "find lock record not found") #define MSG_LOCK_OPENFILE_ENTRY gettext(\ "open lock file root <%s> file <%s>") #define MSG_LOCK_OPENFILE_SLEEPING gettext(\ "open lock file busy <%s>: sleeping <%d>") #define MSG_LOCK_OPENFILE_FAILURE gettext(\ "open lock file could not be opened: %s") #define MSG_LOCK_OPENFILE_SLEEP2 gettext(\ "open lock file cannot obtain record lock <%s>: sleeping <%d>") #define MSG_LOCK_OPENFILE_FAIL2 gettext(\ "open lock file could not obtain record lock: <%s>") #define MSG_LOCK_OPENFILE_SUCCESS gettext(\ "open lock file: opened and locked fd <%d>") #define MSG_LOCK_STATUS_READRECORD gettext(\ "status read record <%d>: count <%d> object <%s> key <%s> pid <%ld> " \ "zid <%ld>") #define MSG_LOCK_STATUS_ENTRY gettext(\ "status key=<%s> object=<%s>") #define MSG_LOCK_RELEASE_FOUND gettext(\ "object <%s> key <%s> is locked: decrementing lock count") #define MSG_LOCK_RELEASE_ENTRY gettext(\ "release lock key=<%s> object=<%s> quiet=<%d>") #define MSG_LOCK_RELEASE_FINDRESULT gettext(\ "release lock result <%d> record <%d>") #define MSG_LOCK_ACQUIRE_FOUND_INC gettext(\ "object <%s> key <%s> is locked: incrementing <%s> lock count") #define MSG_LOCK_ACQUIRE_ENTRY gettext(\ "acquire lock key=<%s> object=<%s> quiet=<%d> exclusive=<%d>") #define MSG_LOCK_ACQUIRE_FINDRESULT gettext(\ "acquire %s lock result <%d> record <%d>") #define MSG_LOCK_ACQUIRE_LOCKED_SHARED gettext(\ "object <%s> key <%s> is locked but shared: incrementing lock count") #define MSG_LOCK_ACQUIRE_NOTLOCKED gettext(\ "cannot acquire %s lock on <%s> key <%s>: object not locked " \ "and non-matching key specified") #define MSG_LOCK_ACQUIRE_NOTFOUND gettext(\ "acquiring %s lock on object <%s>") #ifdef __cplusplus } #endif #endif /* _PKGADM_MSGS_H */