[samba-jp:19049] Re: Samba-3.0.23c build error on NetBSD/cobalt 4.99.4
NAKAJI Hiroyuki
nakaji @ kankyo-u.ac.jp
2006年 12月 7日 (木) 19:43:26 JST
>>>>> In [samba-jp]
>>>>> Takahiro Kambe <taca @ back-street.net> wrote:
> In message <877ix46ndl.fsf @ roddy.4407.kankyo-u.ac.jp>
> on Thu, 07 Dec 2006 18:55:50 +0900,
> NAKAJI Hiroyuki <nakaji @ kankyo-u.ac.jp> wrote:
> > NetBSD/cobalt 4.99.4 で、Samba-3.0.23c を作るときエラーが生じることがある
> > というお話です。Samba-3.0.23c そのままで、
> >
> > configure --with-winbind --with-pam --with-pam_smbpass ...
> >
> > とすると、
> >
> > Compiling nsswitch/pam_winbind.c with -fPIC -DPIC
> > nsswitch/pam_winbind.c: In function '_winbind_read_password':
> > nsswitch/pam_winbind.c:710: error: 'PAM_AUTHTOK_RECOVER_ERR' undeclared (first use in this function)
> pkgsrcにて、/net/samba/patches/ 以下に、
> $NetBSD: patch-ae,v 1.8 2005/11/14 08:05:27 jlam Exp $
> --- auth/pampass.c.orig 2005-10-12 13:03:28.000000000 -0400
> +++ auth/pampass.c
> @@ -43,6 +43,10 @@
> #include <security/pam_appl.h>
> +#ifndef PAM_AUTHTOK_RECOVER_ERR
> +#define PAM_AUTHTOK_RECOVER_ERR PAM_AUTHTOK_RECOVERY_ERR
> +#endif
> +
> /*
> * Structure used to communicate between the conversation function
> * and the server_login/change password functions.
> といったクダリがあります。NetBSD特有なのか、Open PAMで引っ掛かるのかは
> 定かではありません。
FreeBSD 7.0-CURRENT では同じ configure オプションでもエラーにならなかった
ので、NetBSD 特有なのかもしれません。
…、と思いましたが、nsswitch/pam_winbind.h に、
#if defined(SUNOS5) || defined(SUNOS4) || defined(HPUX) || defined(FREEBSD) || defined(AIX)
/* Solaris always uses dynamic pam modules */
#define PAM_EXTERN extern
#include <security/pam_appl.h>
#ifndef PAM_AUTHTOK_RECOVER_ERR
#define PAM_AUTHTOK_RECOVER_ERR PAM_AUTHTOK_RECOVERY_ERR
#endif
#endif
というのがあるので、FreeBSD ではエラーにならないのでした。
configure で、これらの OS の判定を行っていますが、NetBSD は判定対象OSに入っ
ていませんでした。
つまり、Samba では NetBSD がそれほど考慮されていないのではないかと考えられ
ます。:-p
configure と pam_winbind.h の修正だけですむような気がしてきましたので、も
うちょっと調べてみます。
--
NAKAJI Hiroyuki (中治 弘行)
samba-jp メーリングリストの案内