dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * CDDL HEADER START
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * The contents of this file are subject to the terms of the
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * Common Development and Distribution License (the "License").
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * You may not use this file except in compliance with the License.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * or http://www.opensolaris.org/os/licensing.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * See the License for the specific language governing permissions
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * and limitations under the License.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * When distributing Covered Code, include this CDDL HEADER in each
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * If applicable, add the following below this CDDL HEADER, with the
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * fields enclosed by brackets "[]" replaced with your own identifying
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * information: Portions Copyright [yyyy] [name of copyright owner]
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * CDDL HEADER END
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * Use is subject to license terms.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * Error strings for error values returned by ilbadm functions
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("processing of command failed"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("memory allocation failure"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("invalid value - refer to ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("failed to print healthcheck values"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("address family is invalid"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("invalid/incompatible keywords - refer to"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("servergroup name missing"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("rule name missing or specified"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " rule not found"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("server name missing or specified"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " server not found"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " protocol database"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("servicename does not exist in nameservices"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("operation type is invalid"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("keyword is invalid - please refer"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " to ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("recursive import not allowed"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("subcommand is invalid - please refer"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " to ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("mandatory argument(s) missing - refer"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " to ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("address range contains more than 255"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " IP addresses"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("could not export servergroup because"
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra " of lack of space"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra return (gettext("syntax failure - refer to ilbadm(1M)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra/* PRINTFLIKE1 */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* similar to warn() of dladm.c */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra (void) printf("%s %s\n", basename(name), ILBADM_VERSION);
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra ilbadm_err(gettext("bad or misplaced option %s"), argv[optind]);
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra ilbadm_err(gettext("the command line is incomplete "
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra "(more arguments expected)"));
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra ilbadm_err(gettext("file %s cannot be opened for reading"), filename);
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* handle global options (-?, -V) first */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra while ((c = getopt(argc, argv, ":V:?")) != -1) {
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra switch ((char)c) {
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* not reached */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* not reached */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* not reached */
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * we can import from a given file (argv[2]) or from
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * stdin (if no file given)
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra if (strcasecmp(argv[1], "import-config") == 0 ||
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra if (argc > 2 && strcmp(argv[2], "-p") == 0) {
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra if ((fd = open(argv[2+shift], O_RDONLY)) == -1)
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * re-set optind for next callers of getopt() - they all believe they're
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * The error messages have been printed out, using
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * ilbadm_errstr() and ilb_errstr(), before we get here.
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra * So just set the exit value
dbed73cbda2229fd1aa6dc5743993cae7f0a7ee9Sangeeta Misra /* success */