[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 メーリングリストの案内