Print this page
12721 would like svcadm disable -c

*** 19,29 **** * CDDL HEADER END */ /* * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. ! * Copyright 2019 Joyent, Inc. * Copyright (c) 2015, 2016 by Delphix. All rights reserved. */ /* * svcs - display attributes of service instances --- 19,29 ---- * CDDL HEADER END */ /* * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. ! * Copyright 2020 Joyent, Inc. * Copyright (c) 2015, 2016 by Delphix. All rights reserved. */ /* * svcs - display attributes of service instances
*** 85,98 **** #define TEXT_DOMAIN "SUNW_OST_OSCMD" #endif /* TEXT_DOMAIN */ #define LEGACY_UNKNOWN "unknown" - /* Flags for pg_get_single_val() */ - #define EMPTY_OK 0x01 - #define MULTI_OK 0x02 - /* * Per proc(4) when pr_nlwp, pr_nzomb, and pr_lwp.pr_lwpid are all 0, * the process is a zombie. */ #define IS_ZOMBIE(_psip) \ --- 85,94 ----
*** 407,417 **** } } switch (ty) { case SCF_TYPE_ASTRING: ! r = scf_value_get_astring(g_val, vp, sz) > 0 ? SCF_SUCCESS : -1; break; case SCF_TYPE_BOOLEAN: r = scf_value_get_boolean(g_val, (uint8_t *)vp); break; --- 403,419 ---- } } switch (ty) { case SCF_TYPE_ASTRING: ! r = scf_value_get_astring(g_val, vp, sz); ! if (r == 0 && !(flags & EMPTY_OK)) { ! uu_die(gettext("Unexpected empty string for property " ! "%s. Exiting.\n"), propname); ! } ! if (r >= 0) ! r = SCF_SUCCESS; break; case SCF_TYPE_BOOLEAN: r = scf_value_get_boolean(g_val, (uint8_t *)vp); break;
*** 2475,2484 **** --- 2477,2501 ---- } else if (perm != -1) { (void) printf(fmt, DETAILED_WIDTH, gettext("enabled"), perm ? gettext("true") : gettext("false")); } + if (temp == 0 || (temp == -1 && perm == 0)) { + char comment[SCF_COMMENT_MAX_LENGTH] = ""; + const char *pg = (temp != -1 && temp != perm) ? + SCF_PG_GENERAL_OVR : SCF_PG_GENERAL; + + (void) inst_get_single_val(wip->inst, pg, SCF_PROPERTY_COMMENT, + SCF_TYPE_ASTRING, &comment, sizeof (comment), + EMPTY_OK, 0, 0); + + if (comment[0] != '\0') { + printf(fmt, DETAILED_WIDTH, gettext("comment"), + comment); + } + } + /* * Property values may be longer than max_scf_fmri_length, but these * shouldn't be, so we'll just reuse buf. The user can use svcprop if * they suspect something fishy. */