From 46407ca0d2adfa39164ba6cbc7392191b0ec1563 Mon Sep 17 00:00:00 2001 From: zhangzhixin Date: Wed, 12 Apr 2023 12:04:18 +0800 Subject: [PATCH] Fix compilation error on sw64 arch. --- include/compat/endian.h | 2 +- plugins/sudoers/auth/secureware.c | 6 +++--- plugins/sudoers/getspwuid.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/compat/endian.h b/include/compat/endian.h index d3c5ca9..feecbcf 100644 --- a/include/compat/endian.h +++ b/include/compat/endian.h @@ -45,7 +45,7 @@ # define BYTE_ORDER LITTLE_ENDIAN # elif defined(_BIG_ENDIAN) || defined(__BIG_ENDIAN__) # define BYTE_ORDER BIG_ENDIAN -# elif defined(__alpha__) || defined(__alpha) || defined(__amd64) || \ +# elif defined(__alpha__) || defined(__alpha) || defined(__sw_64__) || defined(__sw_64) || defined(__amd64) || \ defined(BIT_ZERO_ON_RIGHT) || defined(i386) || defined(__i386) || \ defined(MIPSEL) || defined(_MIPSEL) || defined(ns32000) || \ defined(__ns3200) || defined(sun386) || defined(vax) || \ diff --git a/plugins/sudoers/auth/secureware.c b/plugins/sudoers/auth/secureware.c index dd7aa42..b5d357d 100644 --- a/plugins/sudoers/auth/secureware.c +++ b/plugins/sudoers/auth/secureware.c @@ -46,7 +46,7 @@ #include "sudoers.h" #include "sudo_auth.h" -#ifdef __alpha +#if defined __alpha || defined __sw_64 extern int crypt_type; #endif @@ -55,7 +55,7 @@ sudo_secureware_init(struct passwd *pw, sudo_auth *auth) { debug_decl(sudo_secureware_init, SUDOERS_DEBUG_AUTH); -#ifdef __alpha +#if defined __alpha || defined __sw_64 if (crypt_type == INT_MAX) debug_return_int(AUTH_FAILURE); /* no shadow */ #endif @@ -77,7 +77,7 @@ sudo_secureware_verify(struct passwd *pw, char *pass, sudo_auth *auth, struct su if (pass[0] == '\0') debug_return_int(pw_epasswd[0] ? AUTH_FAILURE : AUTH_SUCCESS); -#if defined(__alpha) +#if defined(__alpha) || defined(__sw_64) # ifdef HAVE_DISPCRYPT epass = dispcrypt(pass, pw_epasswd, crypt_type); # else diff --git a/plugins/sudoers/getspwuid.c b/plugins/sudoers/getspwuid.c index 650b3f3..f31dd5f 100644 --- a/plugins/sudoers/getspwuid.c +++ b/plugins/sudoers/getspwuid.c @@ -51,7 +51,7 @@ /* * Exported for auth/secureware.c */ -#if defined(HAVE_GETPRPWNAM) && defined(__alpha) +#if defined(HAVE_GETPRPWNAM) && (defined(__alpha) || defined(__sw_64)) int crypt_type = INT_MAX; #endif /* HAVE_GETPRPWNAM && __alpha */ @@ -87,7 +87,7 @@ sudo_getepw(const struct passwd *pw) struct pr_passwd *spw; if ((spw = getprpwnam(pw->pw_name)) && spw->ufld.fd_encrypt) { -# ifdef __alpha +# if defined __alpha || defined __sw_64 crypt_type = spw->ufld.fd_oldcrypt; # endif /* __alpha */ epw = spw->ufld.fd_encrypt; -- 2.33.0