[sugj-tech:7359] Re: [samba-jp:21118] Re: [FYI]OpenSUSE 11.2では net sam provisionが動作しない

gwmaster ribbon @ ns.ribbon.or.jp
2010年 7月 16日 (金) 15:17:50 JST


On Thu, Jul 15, 2010 at 05:39:07PM +0900, gwmaster wrote:

> 
> 根本的には、net sam provisionで設定するデータを
> ソースコード内にハードコーディングしているのが問題
> ではないかと思います。

パッチ作ってみました。実害はないであろう、nisNetGroupを追加してみました。

OpenSUSEのspecファイルはかなり凝ったことをしているので、
rpmbuildするのにちょっと手間取りました。

bugzilla.samba.orgに投稿した方がいいかなあ。




diff -urN source3/include/smbldap.h source3new/include/smbldap.h
--- source3/include/smbldap.h	2009-10-29 16:47:16.000000000 +0900
+++ source3new/include/smbldap.h	2010-07-16 11:36:48.723570692 +0900
@@ -46,6 +46,7 @@
 #define LDAP_OBJ_POSIXACCOUNT		"posixAccount"
 #define LDAP_OBJ_POSIXGROUP		"posixGroup"
 #define LDAP_OBJ_OU			"organizationalUnit"
+#define LDAP_OBJ_NISNETGROUP            "nisNetgroup"      /* structual objectclass */
 
 /* some generic attributes that get reused a lot */
 
diff -urN source3/utils/net_sam.c source3new/utils/net_sam.c
--- source3/utils/net_sam.c	2009-10-29 16:47:16.000000000 +0900
+++ source3new/utils/net_sam.c	2010-07-16 11:38:36.944800087 +0900
@@ -1510,6 +1510,7 @@
 
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_POSIXGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_GROUPMAP);
+		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_NISNETGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "cn", uname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "displayName", wname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "gidNumber", gidstr);
@@ -1565,6 +1566,7 @@
 
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_POSIXGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_GROUPMAP);
+                smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_NISNETGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "cn", uname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "displayName", wname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "gidNumber", gidstr);
@@ -1787,6 +1789,7 @@
 
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_POSIXGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_GROUPMAP);
+                smbldap_set_mod(&mods, LDAP_MOD_ADD, "objectClass", LDAP_OBJ_NISNETGROUP);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "cn", uname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "displayName", wname);
 		smbldap_set_mod(&mods, LDAP_MOD_ADD, "gidNumber", gidstr);



sugj-tech メーリングリストの案内