diff --git a/plugins/sudoers/bsm_audit.c b/plugins/sudoers/bsm_audit.c index 0d0bfa828..60782698f 100644 --- a/plugins/sudoers/bsm_audit.c +++ b/plugins/sudoers/bsm_audit.c @@ -104,7 +104,7 @@ audit_sudo_selected(int sorf) * Returns 0 on success or -1 on error. */ int -bsm_audit_success(char *exec_args[]) +bsm_audit_success(char *const exec_args[]) { auditinfo_addr_t ainfo_addr; token_t *tok; @@ -167,7 +167,7 @@ bsm_audit_success(char *exec_args[]) debug_return_int(-1); } au_write(aufd, tok); - tok = au_to_exec_args(exec_args); + tok = au_to_exec_args((char **)exec_args); if (tok == NULL) { sudo_warn("au_to_exec_args"); debug_return_int(-1); @@ -195,7 +195,7 @@ bsm_audit_success(char *exec_args[]) * Returns 0 on success or -1 on error. */ int -bsm_audit_failure(char *exec_args[], const char *errmsg) +bsm_audit_failure(char *const exec_args[], const char *errmsg) { auditinfo_addr_t ainfo_addr; token_t *tok; @@ -250,13 +250,13 @@ bsm_audit_failure(char *exec_args[], const char *errmsg) debug_return_int(-1); } au_write(aufd, tok); - tok = au_to_exec_args(exec_args); + tok = au_to_exec_args((char **)exec_args); if (tok == NULL) { sudo_warn("au_to_exec_args"); debug_return_int(-1); } au_write(aufd, tok); - tok = au_to_text(errmsg); + tok = au_to_text((char *)errmsg); if (tok == NULL) { sudo_warn("au_to_text"); debug_return_int(-1); diff --git a/plugins/sudoers/solaris_audit.c b/plugins/sudoers/solaris_audit.c index c44259f49..1d5786c4d 100644 --- a/plugins/sudoers/solaris_audit.c +++ b/plugins/sudoers/solaris_audit.c @@ -44,7 +44,7 @@ static char cwd[PATH_MAX]; static char cmdpath[PATH_MAX]; static int -adt_sudo_common(char *argv[]) +adt_sudo_common(char *const argv[]) { int argc; @@ -70,7 +70,7 @@ adt_sudo_common(char *argv[]) user_cmnd); } } else { - if (strlcpy(cmdpath, (const char *)argv[0], + if (strlcpy(cmdpath, argv[0], sizeof(cmdpath)) >= sizeof(cmdpath)) { log_warningx(SLOG_NO_STDERR, _("truncated audit path argv[0]: %s"), @@ -83,7 +83,7 @@ adt_sudo_common(char *argv[]) event->adt_sudo.cmdpath = cmdpath; event->adt_sudo.argc = argc - 1; - event->adt_sudo.argv = &argv[1]; + event->adt_sudo.argv = (char **)&argv[1]; event->adt_sudo.envp = env_get(); return 0; @@ -94,7 +94,7 @@ adt_sudo_common(char *argv[]) * Returns 0 on success or -1 on error. */ int -solaris_audit_success(char *argv[]) +solaris_audit_success(char *const argv[]) { int rc = -1; @@ -116,7 +116,7 @@ solaris_audit_success(char *argv[]) * Returns 0 on success or -1 on error. */ int -solaris_audit_failure(char *argv[], const char *errmsg) +solaris_audit_failure(char *const argv[], const char *errmsg) { int rc = -1; @@ -124,7 +124,7 @@ solaris_audit_failure(char *argv[], const char *errmsg) return -1; } - event->adt_sudo.errmsg = errmsg; + event->adt_sudo.errmsg = (char *)errmsg; if (adt_put_event(event, ADT_FAILURE, ADT_FAIL_VALUE_PROGRAM) != 0) { log_warning(SLOG_NO_STDERR, "adt_put_event(ADT_FAILURE)"); } else { diff --git a/scripts/mkpkg b/scripts/mkpkg index b36f4668d..182b3dd45 100755 --- a/scripts/mkpkg +++ b/scripts/mkpkg @@ -412,7 +412,11 @@ case "$osversion" in configure_opts="${configure_opts}${configure_opts+$tab}--with-project" if [ $osrelease -ge 11 ]; then - configure_opts="${configure_opts}${configure_opts+$tab}--with-solaris-audit" + if test X"`uname -o 2>/dev/null`" = X"illumos"; then + configure_opts="${configure_opts}${configure_opts+$tab}--with-bsm-audit" + else + configure_opts="${configure_opts}${configure_opts+$tab}--with-solaris-audit" + fi # Encrypted remote I/O log support. with_openssl=true fi