$OpenBSD: patch-ext_etc_etc_c,v 1.1 2016/07/15 15:39:03 jeremy Exp $

Use shadow versions of password functions.

--- ext/etc/etc.c.orig	Thu Nov 27 23:30:21 2014
+++ ext/etc/etc.c	Tue Jul 12 11:39:00 2016
@@ -161,7 +161,7 @@ etc_getpwuid(int argc, VALUE *argv, VALUE obj)
     else {
 	uid = getuid();
     }
-    pwd = getpwuid(uid);
+    pwd = getpwuid_shadow(uid);
     if (pwd == 0) rb_raise(rb_eArgError, "can't find user for %d", (int)uid);
     return setup_passwd(pwd);
 #else
@@ -191,7 +191,7 @@ etc_getpwnam(VALUE obj, VALUE nam)
     struct passwd *pwd;
 
     SafeStringValue(nam);
-    pwd = getpwnam(RSTRING_PTR(nam));
+    pwd = getpwnam_shadow(RSTRING_PTR(nam));
     if (pwd == 0) rb_raise(rb_eArgError, "can't find user for %"PRIsVALUE, nam);
     return setup_passwd(pwd);
 #else
