Index: head/sysutils/google-compute-engine-oslogin/Makefile =================================================================== --- head/sysutils/google-compute-engine-oslogin/Makefile (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/Makefile (revision 494231) @@ -1,50 +1,48 @@ # $FreeBSD$ PORTNAME= google-compute-engine-oslogin -DISTVERSION= 1.3.1 -PORTREVISION= 1 +DISTVERSION= 1.4.3 CATEGORIES= sysutils MAINTAINER= helen.koike@collabora.com COMMENT= OS Login Guest Environment for Google Compute Engine LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/../LICENSE LIB_DEPENDS= libcurl.so:ftp/curl \ libjson-c.so:devel/json-c RUN_DEPENDS= gsed:textproc/gsed \ ${LOCALBASE}/lib/pam_mkhomedir.so:security/pam_mkhomedir USES= compiler:c++11-lang gmake localbase:ldflags USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= GoogleCloudPlatform GH_PROJECT= compute-image-packages -GH_TAGNAME= 20181011 - +GH_TAGNAME= 20190124 MAKE_ARGS= JSON_INCLUDE_PATH=${LOCALBASE}/include/json-c \ BIN_INSTALL_PATH=/bin \ PAM_INSTALL_PATH=/lib \ AUTHKEYS_INSTALL_PATH=/bin \ NSS_LIBRARY_SONAME=nss_oslogin.so.1 WRKSRC_SUBDIR= google_compute_engine_oslogin PLIST_SUB= DISTVERSION=${DISTVERSION} post-patch: @${REINPLACE_CMD} -e 's!%%PREFIX%%!${PREFIX}!' \ ${WRKSRC}/bin/google_oslogin_control \ ${WRKSRC}/libnss_cache_oslogin/nss_cache_oslogin.c \ ${WRKSRC}/nss_cache/nss_cache.cc post-install: ${LN} -sf libnss_${PORTNAME}-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_oslogin.so.1 ${LN} -sf libnss_cache_${PORTNAME}-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_cache_oslogin.so.1 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/google_authorized_keys \ ${STAGEDIR}${PREFIX}/lib/libnss_google-compute-engine-oslogin-${DISTVERSION}.so \ ${STAGEDIR}${PREFIX}/lib/pam_oslogin_admin.so \ ${STAGEDIR}${PREFIX}/lib/pam_oslogin_login.so .include Index: head/sysutils/google-compute-engine-oslogin/distinfo =================================================================== --- head/sysutils/google-compute-engine-oslogin/distinfo (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/distinfo (revision 494231) @@ -1,3 +1,3 @@ -TIMESTAMP = 1539895280 -SHA256 (GoogleCloudPlatform-compute-image-packages-1.3.1-20181011_GH0.tar.gz) = c9fb44fb8c4bbde108a2aeba44f11938c7840256ca078804ec3c720a47e79144 -SIZE (GoogleCloudPlatform-compute-image-packages-1.3.1-20181011_GH0.tar.gz) = 147405 +TIMESTAMP = 1550662804 +SHA256 (GoogleCloudPlatform-compute-image-packages-1.4.3-20190124_GH0.tar.gz) = 09637f951245729c66eb5b7b9ed49bead31349b29829baf5c8a4e5d45405a2f4 +SIZE (GoogleCloudPlatform-compute-image-packages-1.4.3-20190124_GH0.tar.gz) = 126211 Index: head/sysutils/google-compute-engine-oslogin/files/patch-bin_google__oslogin__control =================================================================== --- head/sysutils/google-compute-engine-oslogin/files/patch-bin_google__oslogin__control (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/files/patch-bin_google__oslogin__control (nonexistent) @@ -1,76 +0,0 @@ ---- bin/google_oslogin_control.orig 2018-10-11 16:53:23 UTC -+++ bin/google_oslogin_control -@@ -20,7 +20,7 @@ sshd_config="/etc/ssh/sshd_config" - el_release_file="/etc/redhat-release" - sudoers_dir="/var/google-sudoers.d" - users_dir="/var/google-users.d" --sudoers_file="/etc/sudoers.d/google-oslogin" -+sudoers_file="%%PREFIX%%/etc/sudoers.d/google-oslogin" - - usage() { - echo "Usage: ${script_name} {activate|deactivate|status} [--norestartsshd]" -@@ -31,7 +31,7 @@ usage() { - } - - added_comment="# Added by Google Compute Engine OS Login." --sshd_command="AuthorizedKeysCommand /usr/bin/google_authorized_keys" -+sshd_command="AuthorizedKeysCommand %%PREFIX%%/bin/google_authorized_keys" - sshd_user="AuthorizedKeysCommandUser root" - pam_login="account requisite pam_oslogin_login.so" - pam_admin="account optional pam_oslogin_admin.so" -@@ -65,24 +65,26 @@ overwrite_file() { - - remove_from_config() { - config=$1 -- sed -i "/${added_comment}/,+1d" ${config}.new -+ gsed -i "/${added_comment}/,+1d" ${config}.new - } - - remove_from_nss_config() { -- sed -i '/^passwd:/ s/ cache_oslogin oslogin//' ${nss_config}.new -- sed -i '/^passwd:/ s/ cache oslogin//' ${nss_config}.new -- sed -i '/^passwd:/ s/ oslogin//' ${nss_config}.new -+ gsed -i '/^passwd:/ s/ cache_oslogin oslogin//' ${nss_config}.new -+ gsed -i '/^passwd:/ s/ cache oslogin//' ${nss_config}.new -+ gsed -i '/^passwd:/ s/ oslogin//' ${nss_config}.new - } - - add_to_sshd_config() { - remove_from_config ${sshd_config} -- sed -i "\$a${added_comment}\n${sshd_command}" ${sshd_config}.new -- sed -i "\$a${added_comment}\n${sshd_user}" ${sshd_config}.new -+ gsed -i "\$a${added_comment}\n${sshd_command}" ${sshd_config}.new -+ gsed -i "\$a${added_comment}\n${sshd_user}" ${sshd_config}.new - } - - add_to_nss_config() { - remove_from_nss_config -- sed -i '/^passwd:/ s/$/ cache_oslogin oslogin/' ${nss_config}.new -+ gsed -i '/^passwd:/ s/$/ cache_oslogin oslogin/' ${nss_config}.new -+ # Replace compat by files (as compat cannot be used with other sources) -+ gsed -i '/^passwd:/ s/compat/files/' ${nss_config}.new - } - - add_to_pam_config() { -@@ -99,9 +101,9 @@ ${pam_homedir} - " - echo "${added_config}$(cat ${pam_config}.new)" > ${pam_config}.new - else -- sed -i "/account.*pam_nologin.so/ a${added_comment}\n${pam_admin}" ${pam_config}.new -- sed -i "/account.*pam_nologin.so/ a${added_comment}\n${pam_login}" ${pam_config}.new -- sed -i "/pam_loginuid.so/ a${added_comment}\n${pam_homedir}" ${pam_config}.new -+ gsed -i "/account.*pam_nologin.so/ a${added_comment}\n${pam_admin}" ${pam_config}.new -+ gsed -i "/account.*pam_nologin.so/ a${added_comment}\n${pam_login}" ${pam_config}.new -+ gsed -i "/session.*pam_permit.so/ a${added_comment}\n${pam_homedir}" ${pam_config}.new - fi - } - -@@ -115,7 +117,7 @@ restart_service() { - fi - fi - if which service > /dev/null 2>&1; then -- if service --status-all | grep -Fq ${service}; then -+ if service -e | grep -Fq ${service}; then - echo "Restarting ${service}." - service ${service} restart - return $? Property changes on: head/sysutils/google-compute-engine-oslogin/files/patch-bin_google__oslogin__control ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__admin.cc =================================================================== --- head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__admin.cc (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__admin.cc (revision 494231) @@ -1,28 +1,28 @@ ---- pam_module/pam_oslogin_admin.cc.orig 2018-10-11 16:53:23 UTC +--- pam_module/pam_oslogin_admin.cc.orig 2019-01-24 19:28:43 UTC +++ pam_module/pam_oslogin_admin.cc @@ -14,7 +14,6 @@ #define PAM_SM_ACCOUNT #include -#include #include #include #include -@@ -48,7 +47,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in +@@ -50,7 +49,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in int pam_result = PAM_SUCCESS; const char *user_name; if ((pam_result = pam_get_user(pamh, &user_name, NULL)) != PAM_SUCCESS) { - pam_syslog(pamh, LOG_INFO, "Could not get pam user."); + syslog(LOG_INFO, "Could not get pam user."); return pam_result; } - string str_user_name(user_name); -@@ -82,7 +81,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in + +@@ -81,7 +80,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in if (HttpGet(url.str(), &response, &http_code) && http_code == 200 && - ParseJsonToAuthorizeResponse(response)) { + ParseJsonToSuccess(response)) { if (!file_exists) { - pam_syslog(pamh, LOG_INFO, + syslog(LOG_INFO, "Granting sudo permissions to organization user %s.", user_name); std::ofstream sudoers_file; Index: head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__login.cc =================================================================== --- head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__login.cc (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/files/patch-pam__module_pam__oslogin__login.cc (revision 494231) @@ -1,37 +1,89 @@ ---- pam_module/pam_oslogin_login.cc.orig 2018-10-11 16:53:23 UTC +--- pam_module/pam_oslogin_login.cc.orig 2019-02-20 12:34:55 UTC +++ pam_module/pam_oslogin_login.cc @@ -14,7 +14,6 @@ #define PAM_SM_ACCOUNT #include -#include #include #include #include -@@ -46,7 +45,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in +@@ -53,7 +52,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in int pam_result = PAM_PERM_DENIED; const char *user_name; if ((pam_result = pam_get_user(pamh, &user_name, NULL)) != PAM_SUCCESS) { - pam_syslog(pamh, LOG_INFO, "Could not get pam user."); + syslog(LOG_INFO, "Could not get pam user."); return pam_result; } string str_user_name(user_name); -@@ -93,7 +92,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in +@@ -100,7 +99,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in chown(users_filename.c_str(), 0, 0); chmod(users_filename.c_str(), S_IRUSR | S_IWUSR | S_IRGRP); } - pam_syslog(pamh, LOG_INFO, + syslog(LOG_INFO, "Granting login permission for organization user %s.", user_name); pam_result = PAM_SUCCESS; -@@ -101,7 +100,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in +@@ -108,7 +107,7 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh, in if (file_exists) { remove(users_filename.c_str()); } - pam_syslog(pamh, LOG_INFO, + syslog(LOG_INFO, - "Denying login permission for organization user %s.", user_name); + "Denying login permission for organization user %s.", + user_name); - pam_result = PAM_PERM_DENIED; +@@ -128,7 +127,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh + { + const char* user_name; + if (pam_get_user(pamh, &user_name, NULL) != PAM_SUCCESS) { +- pam_syslog(pamh, LOG_INFO, "Could not get pam user."); ++ syslog(LOG_INFO, "Could not get pam user."); + return PAM_PERM_DENIED; + } + +@@ -155,7 +154,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh + + response = ""; + if (!StartSession(email, &response)) { +- pam_syslog(pamh, LOG_ERR, ++ syslog(LOG_ERR, + "Bad response from the two-factor start session request: %s", + response.empty() ? "empty response" : response.c_str()); + return PAM_PERM_DENIED; +@@ -163,7 +162,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh + + string status; + if (!ParseJsonToKey(response, "status", &status)) { +- pam_syslog(pamh, LOG_ERR, ++ syslog(LOG_ERR, + "Failed to parse status from start session response"); + return PAM_PERM_DENIED; + } +@@ -179,7 +178,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh + + std::vector challenges; + if (!ParseJsonToChallenges(response, &challenges)) { +- pam_syslog(pamh, LOG_ERR, ++ syslog(LOG_ERR, + "Failed to parse challenge values from JSON response"); + return PAM_PERM_DENIED; + } +@@ -242,13 +241,13 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t * pamh + pam_error(pamh, "Unable to get user input"); + } + } else { +- pam_syslog(pamh, LOG_ERR, "Unsupported challenge type %s", ++ syslog(LOG_ERR, "Unsupported challenge type %s", + challenge.type.c_str()); + return PAM_PERM_DENIED; + } + + if (!ContinueSession(email, user_token, session_id, challenge, &response)) { +- pam_syslog(pamh, LOG_ERR, ++ syslog(LOG_ERR, + "Bad response from two-factor continue session request: %s", + response.empty() ? "empty response" : response.c_str()); + return PAM_PERM_DENIED; Index: head/sysutils/google-compute-engine-oslogin/files/patch-utils_oslogin__utils.cc =================================================================== --- head/sysutils/google-compute-engine-oslogin/files/patch-utils_oslogin__utils.cc (revision 494230) +++ head/sysutils/google-compute-engine-oslogin/files/patch-utils_oslogin__utils.cc (revision 494231) @@ -1,29 +1,29 @@ ---- utils/oslogin_utils.cc.orig 2018-11-13 21:29:55 UTC +--- utils/oslogin_utils.cc.orig 2019-01-24 19:28:43 UTC +++ utils/oslogin_utils.cc @@ -23,8 +23,7 @@ #include #include -#ifdef __GNUC__ -#if __GNUC__ > 4 || \ +#if defined(__clang__) || __GNUC__ > 4 || \ (__GNUC__ == 4 && (__GNUC_MINOR__ > 9 || \ (__GNUC_MINOR__ == 9 && \ __GNUC_PATCHLEVEL__ > 0))) @@ -34,7 +33,6 @@ #include #define Regex boost #endif -#endif #include "oslogin_utils.h" -@@ -279,7 +277,7 @@ bool ValidatePasswd(struct passwd* result, BufferManag +@@ -292,7 +290,7 @@ bool ValidatePasswd(struct passwd* result, BufferManag } } if (strlen(result->pw_shell) == 0) { - if (!buf->AppendString("/bin/bash", &result->pw_shell, errnop)) { + if (!buf->AppendString("/bin/sh", &result->pw_shell, errnop)) { return false; } }