summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiziano Müller <dev-zero@gentoo.org>2007-06-09 07:47:33 +0000
committerTiziano Müller <dev-zero@gentoo.org>2007-06-09 07:47:33 +0000
commit0771d38ad63d30c25197c1e758d244e0cc5a0b32 (patch)
treec9f16f1b9a04c16d694569c04a1d68c376638ba9 /net-fs/samba
parentVersion bump. (diff)
downloadgentoo-2-0771d38ad63d30c25197c1e758d244e0cc5a0b32.tar.gz
gentoo-2-0771d38ad63d30c25197c1e758d244e0cc5a0b32.tar.bz2
gentoo-2-0771d38ad63d30c25197c1e758d244e0cc5a0b32.zip
Dropped old versions and patches.
(Portage version: 2.1.2.10)
Diffstat (limited to 'net-fs/samba')
-rw-r--r--net-fs/samba/ChangeLog7
-rw-r--r--net-fs/samba/files/3.0.24-heap_overflow.patch247
-rw-r--r--net-fs/samba/files/3.0.24-sid2name_elevation.patch112
-rw-r--r--net-fs/samba/files/digest-samba-3.0.22-r39
-rw-r--r--net-fs/samba/files/digest-samba-3.0.24-r19
-rw-r--r--net-fs/samba/files/digest-samba-3.0.24-r29
-rw-r--r--net-fs/samba/samba-3.0.22-r3.ebuild311
-rw-r--r--net-fs/samba/samba-3.0.24-r1.ebuild299
-rw-r--r--net-fs/samba/samba-3.0.24-r2.ebuild304
9 files changed, 6 insertions, 1301 deletions
diff --git a/net-fs/samba/ChangeLog b/net-fs/samba/ChangeLog
index bc7694125fdc..a274ae5a12a0 100644
--- a/net-fs/samba/ChangeLog
+++ b/net-fs/samba/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for net-fs/samba
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.295 2007/06/01 18:13:48 nixnut Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.296 2007/06/09 07:47:33 dev-zero Exp $
+
+ 09 Jun 2007; Tiziano Müller <dev-zero@gentoo.org>
+ -files/3.0.24-sid2name_elevation.patch, -files/3.0.24-heap_overflow.patch,
+ -samba-3.0.22-r3.ebuild, -samba-3.0.24-r1.ebuild, -samba-3.0.24-r2.ebuild:
+ Dropped old versions and patches.
01 Jun 2007; nixnut <nixnut@gentoo.org> samba-3.0.24-r3.ebuild:
Stable on ppc wrt bug 179867
diff --git a/net-fs/samba/files/3.0.24-heap_overflow.patch b/net-fs/samba/files/3.0.24-heap_overflow.patch
deleted file mode 100644
index 06e23bb89844..000000000000
--- a/net-fs/samba/files/3.0.24-heap_overflow.patch
+++ /dev/null
@@ -1,247 +0,0 @@
-Index: samba-3.0.24/source/include/smb_macros.h
-===================================================================
---- samba-3.0.24.orig/source/include/smb_macros.h 2007-05-10 09:47:34.000000000 -0500
-+++ samba-3.0.24/source/include/smb_macros.h 2007-05-10 09:48:03.000000000 -0500
-@@ -310,7 +310,6 @@
- #if defined(PARANOID_MALLOC_CHECKER)
-
- #define PRS_ALLOC_MEM(ps, type, count) (type *)prs_alloc_mem_((ps),sizeof(type),(count))
--#define PRS_ALLOC_MEM_VOID(ps, size) prs_alloc_mem_((ps),(size),1)
-
- /* Get medieval on our ass about malloc.... */
-
-@@ -354,7 +353,6 @@
- #define __location__ __FILE__ ":" __LINESTR__
-
- #define PRS_ALLOC_MEM(ps, type, count) (type *)prs_alloc_mem((ps),sizeof(type),(count))
--#define PRS_ALLOC_MEM_VOID(ps, size) prs_alloc_mem((ps),(size),1)
-
- /* Regular malloc code. */
-
-Index: samba-3.0.24/source/rpc_parse/parse_dfs.c
-===================================================================
---- samba-3.0.24.orig/source/rpc_parse/parse_dfs.c 2007-05-10 09:47:28.000000000 -0500
-+++ samba-3.0.24/source/rpc_parse/parse_dfs.c 2007-05-10 09:48:03.000000000 -0500
-@@ -325,7 +325,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->stores = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->stores)*v->num_stores);
-+ v->stores = PRS_ALLOC_MEM(ps,NETDFS_DFS_STORAGEINFO,v->num_stores);
-+ if (!v->stores)
-+ return False;
- }
- for (i_stores_1=0; i_stores_1<v->num_stores;i_stores_1++) {
- if (!netdfs_io_dfs_StorageInfo_p("stores", &v->stores[i_stores_1], ps, depth))
-@@ -447,7 +449,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->stores = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->stores)*v->num_stores);
-+ v->stores = PRS_ALLOC_MEM(ps,NETDFS_DFS_STORAGEINFO,v->num_stores);
-+ if (!v->stores)
-+ return False;
- }
- for (i_stores_1=0; i_stores_1<v->num_stores;i_stores_1++) {
- if (!netdfs_io_dfs_StorageInfo_p("stores", &v->stores[i_stores_1], ps, depth))
-@@ -920,7 +924,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO1,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info1_p("s", &v->s[i_s_1], ps, depth))
-@@ -986,7 +992,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO2,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info2_p("s", &v->s[i_s_1], ps, depth))
-@@ -1052,7 +1060,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO3,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info3_p("s", &v->s[i_s_1], ps, depth))
-@@ -1118,7 +1128,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO4,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info4_p("s", &v->s[i_s_1], ps, depth))
-@@ -1184,7 +1196,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO200,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info200_p("s", &v->s[i_s_1], ps, depth))
-@@ -1250,7 +1264,9 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
-+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO300,v->count);
-+ if (!v->s)
-+ return False;
- }
- for (i_s_1=0; i_s_1<v->count;i_s_1++) {
- if (!netdfs_io_dfs_Info300_p("s", &v->s[i_s_1], ps, depth))
-Index: samba-3.0.24/source/rpc_parse/parse_lsa.c
-===================================================================
---- samba-3.0.24.orig/source/rpc_parse/parse_lsa.c 2007-05-10 09:47:14.000000000 -0500
-+++ samba-3.0.24/source/rpc_parse/parse_lsa.c 2007-05-10 09:47:58.000000000 -0500
-@@ -1349,12 +1349,17 @@
- &trn->num_entries2))
- return False;
-
-+ if (trn->num_entries2 != trn->num_entries) {
-+ /* RPC fault */
-+ return False;
-+ }
-+
- if (UNMARSHALLING(ps)) {
-- if ((trn->name = PRS_ALLOC_MEM(ps, LSA_TRANS_NAME, trn->num_entries)) == NULL) {
-+ if ((trn->name = PRS_ALLOC_MEM(ps, LSA_TRANS_NAME, trn->num_entries2)) == NULL) {
- return False;
- }
-
-- if ((trn->uni_name = PRS_ALLOC_MEM(ps, UNISTR2, trn->num_entries)) == NULL) {
-+ if ((trn->uni_name = PRS_ALLOC_MEM(ps, UNISTR2, trn->num_entries2)) == NULL) {
- return False;
- }
- }
-@@ -1406,12 +1411,17 @@
- &trn->num_entries2))
- return False;
-
-+ if (trn->num_entries2 != trn->num_entries) {
-+ /* RPC fault */
-+ return False;
-+ }
-+
- if (UNMARSHALLING(ps)) {
-- if ((trn->name = PRS_ALLOC_MEM(ps, LSA_TRANS_NAME2, trn->num_entries)) == NULL) {
-+ if ((trn->name = PRS_ALLOC_MEM(ps, LSA_TRANS_NAME2, trn->num_entries2)) == NULL) {
- return False;
- }
-
-- if ((trn->uni_name = PRS_ALLOC_MEM(ps, UNISTR2, trn->num_entries)) == NULL) {
-+ if ((trn->uni_name = PRS_ALLOC_MEM(ps, UNISTR2, trn->num_entries2)) == NULL) {
- return False;
- }
- }
-@@ -2759,7 +2769,7 @@
-
- static BOOL lsa_io_privilege_set(const char *desc, PRIVILEGE_SET *out, prs_struct *ps, int depth)
- {
-- uint32 i;
-+ uint32 i, dummy;
-
- prs_debug(ps, depth, desc, "lsa_io_privilege_set");
- depth++;
-@@ -2767,7 +2777,7 @@
- if(!prs_align(ps))
- return False;
-
-- if(!prs_uint32("count", ps, depth, &out->count))
-+ if(!prs_uint32("count", ps, depth, &dummy))
- return False;
- if(!prs_uint32("control", ps, depth, &out->control))
- return False;
-Index: samba-3.0.24/source/rpc_parse/parse_prs.c
-===================================================================
---- samba-3.0.24.orig/source/rpc_parse/parse_prs.c 2007-05-10 09:47:19.000000000 -0500
-+++ samba-3.0.24/source/rpc_parse/parse_prs.c 2007-05-10 09:48:03.000000000 -0500
-@@ -156,7 +156,7 @@
- {
- char *ret = NULL;
-
-- if (size) {
-+ if (size && count) {
- /* We can't call the type-safe version here. */
- ret = _talloc_zero_array(ps->mem_ctx, size, count, "parse_prs");
- }
-@@ -642,7 +642,7 @@
- return True;
-
- if (UNMARSHALLING(ps)) {
-- if ( !(*data = PRS_ALLOC_MEM_VOID(ps, data_size)) )
-+ if ( !(*data = (void *)PRS_ALLOC_MEM(ps, char, data_size)) )
- return False;
- }
-
-Index: samba-3.0.24/source/rpc_parse/parse_sec.c
-===================================================================
---- samba-3.0.24.orig/source/rpc_parse/parse_sec.c 2007-05-10 09:47:22.000000000 -0500
-+++ samba-3.0.24/source/rpc_parse/parse_sec.c 2007-05-10 09:48:01.000000000 -0500
-@@ -122,7 +122,7 @@
- for you as it reads them.
- ********************************************************************/
-
--BOOL sec_io_acl(const char *desc, SEC_ACL **ppsa, prs_struct *ps, int depth)
-+static BOOL sec_io_acl(const char *desc, SEC_ACL **ppsa, prs_struct *ps, int depth)
- {
- unsigned int i;
- uint32 old_offset;
-@@ -165,13 +165,10 @@
- return False;
-
- if (UNMARSHALLING(ps)) {
-- /*
-- * Even if the num_aces is zero, allocate memory as there's a difference
-- * between a non-present DACL (allow all access) and a DACL with no ACE's
-- * (allow no access).
-- */
-- if((psa->ace = PRS_ALLOC_MEM(ps, SEC_ACE, psa->num_aces+1)) == NULL)
-- return False;
-+ if (psa->num_aces) {
-+ if((psa->ace = PRS_ALLOC_MEM(ps, SEC_ACE, psa->num_aces)) == NULL)
-+ return False;
-+ }
- }
-
- for (i = 0; i < psa->num_aces; i++) {
-Index: samba-3.0.24/source/rpc_parse/parse_spoolss.c
-===================================================================
---- samba-3.0.24.orig/source/rpc_parse/parse_spoolss.c 2007-05-10 09:47:16.000000000 -0500
-+++ samba-3.0.24/source/rpc_parse/parse_spoolss.c 2007-05-10 09:48:00.000000000 -0500
-@@ -227,8 +227,13 @@
- if(!prs_uint32("count2", ps, depth, &type->count2))
- return False;
-
-- if (type->count2 != type->count)
-+ if (type->count2 != type->count) {
- DEBUG(4,("What a mess, count was %x now is %x !\n", type->count, type->count2));
-+ return False;
-+ }
-+ if (type->count2 > MAX_NOTIFY_TYPE_FOR_NOW) {
-+ return False;
-+ }
-
- /* parse the option type data */
- for(i=0;i<type->count2;i++)
-
diff --git a/net-fs/samba/files/3.0.24-sid2name_elevation.patch b/net-fs/samba/files/3.0.24-sid2name_elevation.patch
deleted file mode 100644
index e78782fc5ae4..000000000000
--- a/net-fs/samba/files/3.0.24-sid2name_elevation.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-Index: samba-3.0.24/source/lib/util_sec.c
-===================================================================
---- samba-3.0.24.orig/source/lib/util_sec.c 2007-05-03 16:41:17.000000000 -0500
-+++ samba-3.0.24/source/lib/util_sec.c 2007-05-03 16:41:24.000000000 -0500
-@@ -286,28 +286,6 @@
- }
-
- /****************************************************************************
-- Lightweight become root - no group change.
--****************************************************************************/
--
--void become_root_uid_only(void)
--{
-- save_re_uid();
-- set_effective_uid(0);
--}
--
--/****************************************************************************
-- Lightweight unbecome root - no group change. Expects we are root already,
-- saves errno across call boundary.
--****************************************************************************/
--
--void unbecome_root_uid_only(void)
--{
-- int saved_errno = errno;
-- restore_re_uid_fromroot();
-- errno = saved_errno;
--}
--
--/****************************************************************************
- save the real and effective gid for later restoration. Used by the
- getgroups code
- ****************************************************************************/
-Index: samba-3.0.24/source/passdb/lookup_sid.c
-===================================================================
---- samba-3.0.24.orig/source/passdb/lookup_sid.c 2007-05-03 16:41:17.000000000 -0500
-+++ samba-3.0.24/source/passdb/lookup_sid.c 2007-05-03 16:41:24.000000000 -0500
-@@ -421,10 +421,10 @@
- return False;
- }
-
-- become_root_uid_only();
-+ become_root();
- result = pdb_lookup_rids(domain_sid, num_rids, rids,
- *names, *types);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- return (NT_STATUS_IS_OK(result) ||
- NT_STATUS_EQUAL(result, NT_STATUS_NONE_MAPPED) ||
-@@ -1085,9 +1085,9 @@
- goto done;
- }
-
-- become_root_uid_only();
-+ become_root();
- ret = pdb_uid_to_rid(uid, &rid);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- if (ret) {
- /* This is a mapped user */
-@@ -1131,9 +1131,9 @@
- goto done;
- }
-
-- become_root_uid_only();
-+ become_root();
- ret = pdb_gid_to_sid(gid, psid);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- if (ret) {
- /* This is a mapped group */
-@@ -1179,9 +1179,9 @@
- union unid_t id;
- BOOL ret;
-
-- become_root_uid_only();
-+ become_root();
- ret = pdb_sid_to_id(psid, &id, &type);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- if (ret) {
- if (type != SID_NAME_USER) {
-@@ -1259,9 +1259,9 @@
- sid_check_is_in_wellknown_domain(psid))) {
- BOOL ret;
-
-- become_root_uid_only();
-+ become_root();
- ret = pdb_getgrsid(&map, *psid);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- if (ret) {
- *pgid = map.gid;
-@@ -1273,9 +1273,9 @@
- if (sid_peek_check_rid(get_global_sam_sid(), psid, &rid)) {
- BOOL ret;
-
-- become_root_uid_only();
-+ become_root();
- ret = pdb_sid_to_id(psid, &id, &type);
-- unbecome_root_uid_only();
-+ unbecome_root();
-
- if (ret) {
- if ((type != SID_NAME_DOM_GRP) &&
-
-
diff --git a/net-fs/samba/files/digest-samba-3.0.22-r3 b/net-fs/samba/files/digest-samba-3.0.22-r3
deleted file mode 100644
index 418191486d44..000000000000
--- a/net-fs/samba/files/digest-samba-3.0.22-r3
+++ /dev/null
@@ -1,9 +0,0 @@
-MD5 b8569b2f7a943a363ebe87fe7bd4b994 samba-3-gentoo-0.3.13.tar.bz2 16532
-RMD160 9ad61f4391a7c452a40391551f222d6e8107e70b samba-3-gentoo-0.3.13.tar.bz2 16532
-SHA256 e910780553784c0fb41ffad25a8185c20879eb14b8d53ce888e5ad05dc0e4e93 samba-3-gentoo-0.3.13.tar.bz2 16532
-MD5 5c39505af17cf5caf3d6ed8bab135036 samba-3.0.22.tar.gz 17542657
-RMD160 b41cffc999c524c1650d2dd3fbd063dc79741091 samba-3.0.22.tar.gz 17542657
-SHA256 781466885804343248afb74dfdd57df0c7165b252ded06a71c0f24827b2a8e2d samba-3.0.22.tar.gz 17542657
-MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
-RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
-SHA256 14f78b624b047b90ddf4965998e7115d3b3ac97b3229154a302637d8e49adcd4 samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/files/digest-samba-3.0.24-r1 b/net-fs/samba/files/digest-samba-3.0.24-r1
deleted file mode 100644
index 00360d37af2c..000000000000
--- a/net-fs/samba/files/digest-samba-3.0.24-r1
+++ /dev/null
@@ -1,9 +0,0 @@
-MD5 ca3b7f83de0204ab79a9f0aea5a5051d samba-3-gentoo-0.3.16.tar.bz2 14291
-RMD160 c8388239352e981c03f7e99ff02dbaa13ad77e2a samba-3-gentoo-0.3.16.tar.bz2 14291
-SHA256 fe0ae6f8c2833cfdbab82a5ae2087045da4f27f6f07daba6fdc829a93b4e6508 samba-3-gentoo-0.3.16.tar.bz2 14291
-MD5 89273f67a6d8067cbbecefaa13747153 samba-3.0.24.tar.gz 17708128
-RMD160 f208dca645d07a195169e005a50fb4c4879254eb samba-3.0.24.tar.gz 17708128
-SHA256 c4e8de3426fbbcee7f338f5cf09052cbdf9a36ae638aeeeca10498ef8d5343e2 samba-3.0.24.tar.gz 17708128
-MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
-RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
-SHA256 14f78b624b047b90ddf4965998e7115d3b3ac97b3229154a302637d8e49adcd4 samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/files/digest-samba-3.0.24-r2 b/net-fs/samba/files/digest-samba-3.0.24-r2
deleted file mode 100644
index 00360d37af2c..000000000000
--- a/net-fs/samba/files/digest-samba-3.0.24-r2
+++ /dev/null
@@ -1,9 +0,0 @@
-MD5 ca3b7f83de0204ab79a9f0aea5a5051d samba-3-gentoo-0.3.16.tar.bz2 14291
-RMD160 c8388239352e981c03f7e99ff02dbaa13ad77e2a samba-3-gentoo-0.3.16.tar.bz2 14291
-SHA256 fe0ae6f8c2833cfdbab82a5ae2087045da4f27f6f07daba6fdc829a93b4e6508 samba-3-gentoo-0.3.16.tar.bz2 14291
-MD5 89273f67a6d8067cbbecefaa13747153 samba-3.0.24.tar.gz 17708128
-RMD160 f208dca645d07a195169e005a50fb4c4879254eb samba-3.0.24.tar.gz 17708128
-SHA256 c4e8de3426fbbcee7f338f5cf09052cbdf9a36ae638aeeeca10498ef8d5343e2 samba-3.0.24.tar.gz 17708128
-MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
-RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
-SHA256 14f78b624b047b90ddf4965998e7115d3b3ac97b3229154a302637d8e49adcd4 samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/samba-3.0.22-r3.ebuild b/net-fs/samba/samba-3.0.22-r3.ebuild
deleted file mode 100644
index 6504a8506265..000000000000
--- a/net-fs/samba/samba-3.0.22-r3.ebuild
+++ /dev/null
@@ -1,311 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.22-r3.ebuild,v 1.15 2007/05/06 10:35:09 genone Exp $
-
-inherit eutils versionator pam
-
-IUSE_LINGUAS="ja pl"
-IUSE="acl async automount cups doc examples kerberos ldap ldapsam libclamav
- mysql oav pam postgres python quotas readline selinux swat syslog
- winbind xml"
-RESTRICT="test"
-
-VSCAN_VER="0.3.6b"
-PATCH_VER="0.3.13"
-MY_P=${PN}-${PV/_/}
-MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
-S2=${WORKDIR}/${MY_P}
-S=${S2}/source
-PFVSCAN=${PN}-vscan-${VSCAN_VER}
-DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
-HOMEPAGE="http://www.samba.org/
- http://www.openantivirus.org/projects.php"
-SRC_URI="mirror://samba/${MY_P}.tar.gz
- mirror://samba/old-versions/${MY_P}.tar.gz
- oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )
- mirror://gentoo/${MY_PP}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
-
-RDEPEND="dev-libs/popt
- virtual/libiconv
- acl? ( kernel_linux? ( sys-apps/acl ) )
- cups? ( net-print/cups )
- ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
- mysql? ( virtual/mysql sys-libs/zlib )
- pam? ( virtual/pam )
- postgres? ( dev-db/postgresql sys-libs/zlib )
- python? ( dev-lang/python )
- readline? ( sys-libs/readline )
- selinux? ( sec-policy/selinux-samba )
- swat? ( sys-apps/xinetd )
- syslog? ( virtual/logger )
- xml? ( dev-libs/libxml2 sys-libs/zlib )
- "
-
-DEPEND="${RDEPEND}
- sys-devel/autoconf
- >=sys-apps/sed-4"
-
-PRIVATE_DST=/var/lib/samba/private
-PATCHDIR=${WORKDIR}/patches
-CONFDIR=${WORKDIR}/configs
-
-src_unpack() {
- unpack ${A}; cd ${S2}
-
- rm -rf ${S2}/examples.ORIG
-
- export EPATCH_SUFFIX="patch"
- epatch ${PATCHDIR}/general
- if use oav ; then
- cd ${WORKDIR}
- if [[ -d ${PATCHDIR}/vscan ]]; then
- epatch ${PATCHDIR}/vscan
- fi
- cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
- fi
-
- #uClib: bug #120383, https://bugzilla.samba.org/show_bug.cgi?id=3451
- sed -i -e '/include.*fstab.h/d' "${S}"/client/umount.cifs.c
-}
-
-src_compile() {
- ebegin "Running autoconf"
- autoconf
- eend $?
-
- local myconf
- local mymods
- local mylangs
-
- use xml && mymods="xml,${mymods}"
- use mysql && mymods="mysql,${mymods}"
- use postgres && mymods="pgsql,${mymods}"
- [[ -n "${mymods}" ]] && myconf="--with-expsam=${mymods}"
-
- mylangs="en"
- use linguas_ja && mylangs="${mylangs},ja"
- use linguas_pl && mylangs="${mylangs},pl"
- myconf="${myconf} --with-manpages-langs=${mylangs}"
-
- if use ldap; then
- myconf="${myconf} $(use_with ldap) $(use_with kerberos ads)"
- myconf="${myconf} $(use_with ldapsam)"
- else
- myconf="${myconf} --without-ldapsam"
- fi
- use winbind && myconf="${myconf} $(use_with winbind) --with-shared-modules=idmap_rid,idmap_ad"
-
- [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
- use hppa && myconf="${myconf} --disable-pie"
-
- econf \
- --with-fhs \
- --sysconfdir=/etc/samba \
- --localstatedir=/var \
- --with-configdir=/etc/samba \
- --with-libdir=/usr/$(get_libdir)/samba \
- --with-swatdir=/usr/share/doc/${PF}/swat \
- --with-piddir=/var/run/samba \
- --with-lockdir=/var/cache/samba \
- --with-logfilebase=/var/log/samba \
- --with-privatedir=${PRIVATE_DST} \
- --with-libsmbclient \
- --without-spinlocks \
- $(use_with acl acl-support) \
- $(use_with async aio-support) \
- $(use_with automount) \
- $(use_enable cups) \
- $(use_with kerberos krb5) \
- $(use_with pam) $(use_with pam pam_smbpass) \
- $(use_with python) \
- $(use_with quotas) $(use_with quotas sys-quotas) \
- $(use_with readline) \
- $(use_with kernel_linux smbmount) \
- $(use_with syslog) \
- ${myconf} || die
-
- emake proto || die "SAMBA make proto error"
- emake everything || die "SAMBA make everything error"
-
- einfo "make rpctorture"
- emake rpctorture || ewarn "rpctorture didn't build"
-
- if use python ; then
- python python/setup.py build
- fi
-
- # Build samba-vscan plugins
- if use oav; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- econf \
- --with-fhs \
- --libdir=/usr/$(get_libdir)/samba \
- $(use_with libclamav) || die "${PFVSCAN} ./configure failed"
- emake || die "Failed to make ${PFVSCAN}"
- fi
-
-}
-
-src_install() {
- local extra_bins="rpctorture"
-
- make DESTDIR=${D} install-everything || die
-
- # Extra rpctorture progs
- exeinto /usr/bin
- for i in ${extra_bins}; do
- [[ -x ${S}/bin/${i} ]] && doexe ${S}/bin/${i}
- elog "Extra binaries: ${i}"
- done
-
- # remove .old stuff from /usr/bin:
- rm -f ${D}/usr/bin/*.old
-
- # Nsswitch extensions. Make link for wins and winbind resolvers
- dolib.so ${S}/nsswitch/libnss_wins.so
- dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
- if use winbind; then
- dolib.so ${S}/nsswitch/libnss_winbind.so
- dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
- fi
-
- if use pam; then
- exeinto /$(get_libdir)/security
- doexe ${S}/bin/pam_smbpass.so
- if use winbind; then
- exeinto /$(get_libdir)/security
- doexe ${S}/nsswitch/pam_winbind.so
- fi
- fi
-
- if use kernel_linux; then
- # mount backend
- dodir /sbin
- dosym ../usr/bin/smbmount /sbin/mount.smbfs
- dosym ../usr/bin/mount.cifs /sbin/mount.cifs
- fi
-
- # bug #46389: samba doesn't create symlink anymore
- # beaviour seems to be changed in 3.0.6, see bug #61046
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
-
- # make the smb backend symlink for cups printing support (bug #133133)
- if use cups; then
- dodir $(cups-config --serverbin)/backend
- dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb
- fi
-
- # VFS plugin modules
- if use oav; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- make install DESTDIR=${D} || die "VFS: vscan error"
- insinto /etc/samba
- doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
- fi
-
- # Python extensions
- if use python; then
- cd ${S}
- python python/setup.py install --root=${D} || die
- fi
-
- # General config files
- insinto /etc/samba
- doins ${CONFDIR}/smbusers
- newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
- doins ${CONFDIR}/lmhosts
-
- newpamd ${CONFDIR}/samba.pam samba
- use winbind && doins ${CONFDIR}/system-auth-winbind
- insinto /etc/xinetd.d
- newins ${CONFDIR}/swat.xinetd swat
- newinitd ${CONFDIR}/samba-init samba
- newconfd ${CONFDIR}/samba-conf samba
- if use ldap; then
- insinto /etc/openldap/schema
- doins ${S2}/examples/LDAP/samba.schema
- fi
-
- # dirs
- diropts -m0700 ; keepdir ${PRIVATE_DST}
- diropts -m1777 ; keepdir /var/spool/samba
-
- diropts -m0755
- keepdir /var/{log,run,cache}/samba
- keepdir /var/lib/samba/{netlogon,profiles}
- keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
- keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
-
- # docs
- dodoc ${FILESDIR}/README.gentoo
- dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
- dodoc ${CONFDIR}/nsswitch.conf-wins
- use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
-
- if use oav; then
- docinto ${PFVSCAN}
- cd ${WORKDIR}/${PFVSCAN}
- dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
- dodoc */*.conf
- fi
-
- if use examples; then
- docinto examples
- cp -pPR ${S2}/examples/* ${D}/usr/share/doc/${PF}/examples
- chmod -R 755 `find ${D}/usr/share/doc/${PF}/examples -type d`
- chmod -R 644 `find ${D}/usr/share/doc/${PF}/examples ! -type d`
- fi
-
- if ! use doc; then
- if ! use swat; then
- rm -rf ${D}/usr/share/doc/${PF}/swat
- else
- rm -rf ${D}/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
- rm -rf ${D}/usr/share/doc/${PF}/swat/using_samba
- fi
- fi
-
- # Patch ChangeLog
- docinto gentoo
- dodoc ${PATCHDIR}/ChangeLog
-}
-
-pkg_preinst() {
- local PRIVATE_SRC=/etc/samba/private
- if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
- && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]]; then
- ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
- mkdir -p ${D}/${PRIVATE_DST}
- cp -pPRf ${ROOT}/${PRIVATE_SRC}/* ${D}/${PRIVATE_DST}/
- eend $?
- fi
-
- if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]]; then
- touch ${D}/etc/samba/smb.conf
- fi
-}
-
-pkg_postinst() {
- if use swat; then
- elog "swat must be enabled by xinetd:"
- elog " change the /etc/xinetd.d/swat configuration"
- elog
- fi
- elog "As of 3.0.20: New USE flags: syslog, automount, async (default: disabled)"
- elog "As of 3.0.20b: New USE flags: ldapsam, swat (default: disabled)"
- elog "SQL and XML backends are *experimental*: sql is being deprecated"
- elog "Latest info: README.gentoo in documentation directory"
-}
-
-pkg_postrm(){
- # If stale docs, and one isn't re-emerging the latest version, removes
- # (this is actually a portage bug, though)
- [[ -n "${PF}" && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
- rm -rf ${ROOT}/usr/share/doc/${PF}
-}
-
diff --git a/net-fs/samba/samba-3.0.24-r1.ebuild b/net-fs/samba/samba-3.0.24-r1.ebuild
deleted file mode 100644
index b439e4a4b9e5..000000000000
--- a/net-fs/samba/samba-3.0.24-r1.ebuild
+++ /dev/null
@@ -1,299 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.24-r1.ebuild,v 1.3 2007/05/28 17:08:06 armin76 Exp $
-
-WANT_AUTOCONF="latest"
-WANT_AUTOMAKE="none"
-
-inherit eutils autotools versionator pam
-
-IUSE_LINGUAS="ja pl"
-IUSE="acl async automount caps cups doc examples kerberos kernel_linux ldap fam
- linguas_ja linguas_pl
- oav pam python quotas readline selinux swat syslog winbind"
-
-VSCAN_VER="0.3.6b"
-PATCH_VER="0.3.16"
-MY_P=${PN}-${PV/_/}
-MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
-S2=${WORKDIR}/${MY_P}
-S=${S2}/source
-PFVSCAN=${PN}-vscan-${VSCAN_VER}
-
-DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
-HOMEPAGE="http://www.samba.org/ http://www.openantivirus.org/projects.php"
-SRC_URI="mirror://gentoo/${MY_PP}.tar.bz2
- mirror://samba/${MY_P}.tar.gz
- mirror://samba/old-versions/${MY_P}.tar.gz
- oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha ~amd64 ~arm ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd x86 ~x86-fbsd"
-
-RDEPEND="dev-libs/popt
- virtual/libiconv
- acl? ( kernel_linux? ( sys-apps/acl ) )
- cups? ( net-print/cups )
- ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
- pam? ( virtual/pam )
- python? ( dev-lang/python )
- readline? ( sys-libs/readline )
- selinux? ( sec-policy/selinux-samba )
- swat? ( sys-apps/xinetd )
- syslog? ( virtual/logger )
- fam? ( virtual/fam )
- caps? ( sys-libs/libcap )"
-DEPEND="${RDEPEND}"
-
-PRIVATE_DST=/var/lib/samba/private
-PATCHDIR=${WORKDIR}/patches
-CONFDIR=${WORKDIR}/configs
-
-src_unpack() {
- unpack ${A}
- cd "${S2}"
-
- export EPATCH_SUFFIX="patch"
- epatch ${PATCHDIR}/general
- if use oav ; then
- cd ${WORKDIR}
- if [[ -d ${PATCHDIR}/vscan ]] ; then
- epatch ${PATCHDIR}/vscan
- fi
- cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
- fi
-
- # patches screw with autotool files
- cd "${S}"
- eautoconf
-}
-
-src_compile() {
- local myconf
- local mylangs
- local mymod_shared
-
- mylangs="--with-manpages-langs=en"
- use linguas_ja && mylangs="${mylangs},ja"
- use linguas_pl && mylangs="${mylangs},pl"
-
- use winbind && mymod_shared="--with-shared-modules=idmap_rid"
- if use ldap ; then
- myconf="${myconf} $(use_with kerberos ads)"
- use winbind && mymod_shared="${mymod_shared},idmap_ad"
- fi
-
- [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
- use hppa && myconf="${myconf} --disable-pie"
-
- use fam && export ac_cv_header_fam_h=yes || export ac_cv_header_fam_h=no
- use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no
-
- econf \
- --with-fhs \
- --sysconfdir=/etc/samba \
- --localstatedir=/var \
- --with-configdir=/etc/samba \
- --with-libdir=/usr/$(get_libdir)/samba \
- --with-swatdir=/usr/share/doc/${PF}/swat \
- --with-piddir=/var/run/samba \
- --with-lockdir=/var/cache/samba \
- --with-logfilebase=/var/log/samba \
- --with-privatedir=${PRIVATE_DST} \
- --with-libsmbclient \
- --without-spinlocks \
- --enable-socket-wrapper \
- $(use_with acl acl-support) \
- $(use_with async aio-support) \
- $(use_with automount) \
- $(use_enable cups) \
- $(use_with kerberos krb5) \
- $(use_with ldap) \
- $(use_with pam) $(use_with pam pam_smbpass) \
- $(use_with python) \
- $(use_with quotas) $(use_with quotas sys-quotas) \
- $(use_with readline) \
- $(use_with kernel_linux smbmount) \
- $(use_with syslog) \
- $(use_with winbind) \
- ${myconf} ${mylangs} ${mymod_shared} || die
-
- emake proto || die "SAMBA make proto error"
- emake everything || die "SAMBA make everything error"
-
- emake rpctorture >& rpctorture.log || ewarn "rpctorture didn't build [that's ok!]"
-
- if use python ; then
- python python/setup.py build
- fi
-
- # Build samba-vscan plugins
- if use oav ; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- econf \
- --with-fhs \
- --libdir=/usr/$(get_libdir)/samba \
- || die "${PFVSCAN} ./configure failed"
- emake || die "Failed to make ${PFVSCAN}"
- fi
-
-}
-
-src_install() {
- local extra_bins="rpctorture"
-
- emake DESTDIR="${D}" install-everything || die
-
- # Extra rpctorture progs
- for i in ${extra_bins} ; do
- [[ -x ${S}/bin/${i} ]] && dobin "${S}"/bin/${i}
- done
-
- # remove .old stuff from /usr/bin:
- rm -f "${D}"/usr/bin/*.old
-
- # Nsswitch extensions. Make link for wins and winbind resolvers
- if use winbind ; then
- dolib.so "${S}"/nsswitch/libnss_wins.so || die
- dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
- dolib.so "${S}"/nsswitch/libnss_winbind.so || die
- dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
- fi
-
- if use pam ; then
- exeinto /$(get_libdir)/security
- doexe "${S}"/bin/pam_smbpass.so || die
- if use winbind ; then
- exeinto /$(get_libdir)/security
- doexe "${S}"/bin/pam_winbind.so || die
- fi
- fi
-
- if use kernel_linux ; then
- # mount backend
- dodir /sbin
- dosym ../usr/bin/smbmount /sbin/mount.smbfs
- dosym ../usr/bin/mount.cifs /sbin/mount.cifs
- fi
-
- # bug #46389: samba doesn't create symlink anymore
- # beaviour seems to be changed in 3.0.6, see bug #61046
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
-
- # make the smb backend symlink for cups printing support (bug #133133)
- if use cups ; then
- dodir $(cups-config --serverbin)/backend
- dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb
- fi
-
- # VFS plugin modules
- if use oav ; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- make install DESTDIR=${D} || die "VFS: vscan error"
- insinto /etc/samba
- doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
- fi
-
- # Python extensions
- if use python ; then
- cd ${S}
- python python/setup.py install --root=${D} || die
- fi
-
- # General config files
- insinto /etc/samba
- doins ${CONFDIR}/smbusers
- newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
- doins ${CONFDIR}/lmhosts
-
- newpamd ${CONFDIR}/samba.pam samba
- use winbind && doins ${CONFDIR}/system-auth-winbind
- if use swat ; then
- insinto /etc/xinetd.d
- newins ${CONFDIR}/swat.xinetd swat
- else
- rm -f "${D}"/usr/sbin/swat
- rm -f "${D}"/usr/share/man/man8/swat.8
- fi
- newinitd "${FILESDIR}/samba-init" samba
- newconfd "${FILESDIR}/samba-conf" samba
- if use ldap ; then
- insinto /etc/openldap/schema
- doins ${S2}/examples/LDAP/samba.schema
- fi
-
- # dirs
- diropts -m0700 ; keepdir ${PRIVATE_DST}
- diropts -m1777 ; keepdir /var/spool/samba
-
- diropts -m0755
- keepdir /var/{log,run,cache}/samba
- keepdir /var/lib/samba/{netlogon,profiles}
- keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
- keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
-
- # docs
- dodoc ${FILESDIR}/README.gentoo
- dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
- dodoc ${CONFDIR}/nsswitch.conf-wins
- use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
-
- if use oav ; then
- docinto ${PFVSCAN}
- cd ${WORKDIR}/${PFVSCAN}
- dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
- dodoc */*.conf
- fi
-
- if use examples ; then
- docinto examples
- cp -pPR ${S2}/examples/* "${D}"/usr/share/doc/${PF}/examples
- find "${D}"/usr/share/doc/${PF} -type d -print0 | xargs -0 chmod 755
- find "${D}"/usr/share/doc/${PF}/examples ! -type d -print0 | xargs -0 chmod 644
- fi
-
- if ! use doc ; then
- if ! use swat ; then
- rm -rf "${D}"/usr/share/doc/${PF}/swat
- else
- rm -rf "${D}"/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
- rm -rf "${D}"/usr/share/doc/${PF}/swat/using_samba
- fi
- fi
-
- # Patch ChangeLog
- docinto gentoo
- dodoc ${PATCHDIR}/ChangeLog
-}
-
-pkg_preinst() {
- local PRIVATE_SRC=/etc/samba/private
- if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
- && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]] ; then
- ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
- mkdir -p "${D}"/${PRIVATE_DST}
- cp -pPRf "${ROOT}"/${PRIVATE_SRC}/* "${D}"/${PRIVATE_DST}/
- eend $?
- fi
-
- if [[ ! -f ${ROOT}/etc/samba/smb.conf ]] ; then
- touch "${D}"/etc/samba/smb.conf
- fi
-}
-
-pkg_postinst() {
- if use swat ; then
- elog "swat must be enabled by xinetd:"
- elog " change the /etc/xinetd.d/swat configuration"
- fi
- elog "Latest info: README.gentoo in documentation directory"
-}
-
-pkg_postrm(){
- # If stale docs, and one isn't re-emerging the latest version, removes
- # (this is actually a portage bug, though)
- [[ -n ${PF} && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
- rm -rf "${ROOT}"/usr/share/doc/${PF}
-}
diff --git a/net-fs/samba/samba-3.0.24-r2.ebuild b/net-fs/samba/samba-3.0.24-r2.ebuild
deleted file mode 100644
index 48e33583970f..000000000000
--- a/net-fs/samba/samba-3.0.24-r2.ebuild
+++ /dev/null
@@ -1,304 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.24-r2.ebuild,v 1.8 2007/05/27 00:44:11 kumba Exp $
-
-WANT_AUTOCONF="latest"
-WANT_AUTOMAKE="none"
-
-inherit eutils autotools versionator pam
-
-IUSE_LINGUAS="ja pl"
-IUSE="acl async automount caps cups doc examples kerberos kernel_linux ldap fam
- linguas_ja linguas_pl
- oav pam python quotas readline selinux swat syslog winbind"
-
-VSCAN_VER="0.3.6b"
-PATCH_VER="0.3.16"
-MY_P=${PN}-${PV/_/}
-MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
-S2=${WORKDIR}/${MY_P}
-S=${S2}/source
-PFVSCAN=${PN}-vscan-${VSCAN_VER}
-
-DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
-HOMEPAGE="http://www.samba.org/ http://www.openantivirus.org/projects.php"
-SRC_URI="mirror://gentoo/${MY_PP}.tar.bz2
- mirror://samba/${MY_P}.tar.gz
- mirror://samba/old-versions/${MY_P}.tar.gz
- oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm hppa ia64 mips ppc ppc64 ~s390 ~sh sparc ~sparc-fbsd x86 ~x86-fbsd"
-
-RDEPEND="dev-libs/popt
- virtual/libiconv
- acl? ( kernel_linux? ( sys-apps/acl ) )
- cups? ( net-print/cups )
- ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
- pam? ( virtual/pam )
- python? ( dev-lang/python )
- readline? ( sys-libs/readline )
- selinux? ( sec-policy/selinux-samba )
- swat? ( sys-apps/xinetd )
- syslog? ( virtual/logger )
- fam? ( virtual/fam )
- caps? ( sys-libs/libcap )"
-DEPEND="${RDEPEND}"
-
-PRIVATE_DST=/var/lib/samba/private
-PATCHDIR=${WORKDIR}/patches
-CONFDIR=${WORKDIR}/configs
-
-src_unpack() {
- unpack ${A}
- cd "${S2}"
-
- epatch "${FILESDIR}/${PV}-sid2name_elevation.patch"
- epatch "${FILESDIR}/${PV}-shell_escape.patch"
- epatch "${FILESDIR}/${PV}-heap_overflow.patch"
-
- export EPATCH_SUFFIX="patch"
- epatch ${PATCHDIR}/general
-
- if use oav ; then
- cd ${WORKDIR}
- if [[ -d ${PATCHDIR}/vscan ]] ; then
- epatch ${PATCHDIR}/vscan
- fi
- cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
- fi
-
- # patches screw with autotool files
- cd "${S}"
- eautoconf
-}
-
-src_compile() {
- local myconf
- local mylangs
- local mymod_shared
-
- mylangs="--with-manpages-langs=en"
- use linguas_ja && mylangs="${mylangs},ja"
- use linguas_pl && mylangs="${mylangs},pl"
-
- use winbind && mymod_shared="--with-shared-modules=idmap_rid"
- if use ldap ; then
- myconf="${myconf} $(use_with kerberos ads)"
- use winbind && mymod_shared="${mymod_shared},idmap_ad"
- fi
-
- [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
- use hppa && myconf="${myconf} --disable-pie"
-
- use fam && export ac_cv_header_fam_h=yes || export ac_cv_header_fam_h=no
- use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no
-
- econf \
- --with-fhs \
- --sysconfdir=/etc/samba \
- --localstatedir=/var \
- --with-configdir=/etc/samba \
- --with-libdir=/usr/$(get_libdir)/samba \
- --with-swatdir=/usr/share/doc/${PF}/swat \
- --with-piddir=/var/run/samba \
- --with-lockdir=/var/cache/samba \
- --with-logfilebase=/var/log/samba \
- --with-privatedir=${PRIVATE_DST} \
- --with-libsmbclient \
- --without-spinlocks \
- --enable-socket-wrapper \
- $(use_with acl acl-support) \
- $(use_with async aio-support) \
- $(use_with automount) \
- $(use_enable cups) \
- $(use_with kerberos krb5) \
- $(use_with ldap) \
- $(use_with pam) $(use_with pam pam_smbpass) \
- $(use_with python) \
- $(use_with quotas) $(use_with quotas sys-quotas) \
- $(use_with readline) \
- $(use_with kernel_linux smbmount) \
- $(use_with syslog) \
- $(use_with winbind) \
- ${myconf} ${mylangs} ${mymod_shared} || die
-
- emake proto || die "SAMBA make proto error"
- emake everything || die "SAMBA make everything error"
-
- emake rpctorture >& rpctorture.log || ewarn "rpctorture didn't build [that's ok!]"
-
- if use python ; then
- python python/setup.py build
- fi
-
- # Build samba-vscan plugins
- if use oav ; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- econf \
- --with-fhs \
- --libdir=/usr/$(get_libdir)/samba \
- || die "${PFVSCAN} ./configure failed"
- emake || die "Failed to make ${PFVSCAN}"
- fi
-
-}
-
-src_install() {
- local extra_bins="rpctorture"
-
- emake DESTDIR="${D}" install-everything || die
-
- # Extra rpctorture progs
- for i in ${extra_bins} ; do
- [[ -x ${S}/bin/${i} ]] && dobin "${S}"/bin/${i}
- done
-
- # remove .old stuff from /usr/bin:
- rm -f "${D}"/usr/bin/*.old
-
- # Nsswitch extensions. Make link for wins and winbind resolvers
- if use winbind ; then
- dolib.so "${S}"/nsswitch/libnss_wins.so || die
- dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
- dolib.so "${S}"/nsswitch/libnss_winbind.so || die
- dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
- fi
-
- if use pam ; then
- exeinto /$(get_libdir)/security
- doexe "${S}"/bin/pam_smbpass.so || die
- if use winbind ; then
- exeinto /$(get_libdir)/security
- doexe "${S}"/bin/pam_winbind.so || die
- fi
- fi
-
- if use kernel_linux ; then
- # mount backend
- dodir /sbin
- dosym ../usr/bin/smbmount /sbin/mount.smbfs
- dosym ../usr/bin/mount.cifs /sbin/mount.cifs
- fi
-
- # bug #46389: samba doesn't create symlink anymore
- # beaviour seems to be changed in 3.0.6, see bug #61046
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
- dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
-
- # make the smb backend symlink for cups printing support (bug #133133)
- if use cups ; then
- dodir $(cups-config --serverbin)/backend
- dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb
- fi
-
- # VFS plugin modules
- if use oav ; then
- cd ${S2}/examples/VFS/${PFVSCAN}
- make install DESTDIR=${D} || die "VFS: vscan error"
- insinto /etc/samba
- doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
- fi
-
- # Python extensions
- if use python ; then
- cd ${S}
- python python/setup.py install --root=${D} || die
- fi
-
- # General config files
- insinto /etc/samba
- doins ${CONFDIR}/smbusers
- newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
- doins ${CONFDIR}/lmhosts
-
- newpamd ${CONFDIR}/samba.pam samba
- use winbind && doins ${CONFDIR}/system-auth-winbind
- if use swat ; then
- insinto /etc/xinetd.d
- newins ${CONFDIR}/swat.xinetd swat
- else
- rm -f "${D}"/usr/sbin/swat
- rm -f "${D}"/usr/share/man/man8/swat.8
- fi
- newinitd "${FILESDIR}/samba-init" samba
- newconfd "${FILESDIR}/samba-conf" samba
- if use ldap ; then
- insinto /etc/openldap/schema
- doins ${S2}/examples/LDAP/samba.schema
- fi
-
- # dirs
- diropts -m0700 ; keepdir ${PRIVATE_DST}
- diropts -m1777 ; keepdir /var/spool/samba
-
- diropts -m0755
- keepdir /var/{log,run,cache}/samba
- keepdir /var/lib/samba/{netlogon,profiles}
- keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
- keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
-
- # docs
- dodoc ${FILESDIR}/README.gentoo
- dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
- dodoc ${CONFDIR}/nsswitch.conf-wins
- use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
-
- if use oav ; then
- docinto ${PFVSCAN}
- cd ${WORKDIR}/${PFVSCAN}
- dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
- dodoc */*.conf
- fi
-
- if use examples ; then
- docinto examples
- cp -pPR ${S2}/examples/* "${D}"/usr/share/doc/${PF}/examples
- find "${D}"/usr/share/doc/${PF} -type d -print0 | xargs -0 chmod 755
- find "${D}"/usr/share/doc/${PF}/examples ! -type d -print0 | xargs -0 chmod 644
- fi
-
- if ! use doc ; then
- if ! use swat ; then
- rm -rf "${D}"/usr/share/doc/${PF}/swat
- else
- rm -rf "${D}"/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
- rm -rf "${D}"/usr/share/doc/${PF}/swat/using_samba
- fi
- fi
-
- # Patch ChangeLog
- docinto gentoo
- dodoc ${PATCHDIR}/ChangeLog
-}
-
-pkg_preinst() {
- local PRIVATE_SRC=/etc/samba/private
- if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
- && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]] ; then
- ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
- mkdir -p "${D}"/${PRIVATE_DST}
- cp -pPRf "${ROOT}"/${PRIVATE_SRC}/* "${D}"/${PRIVATE_DST}/
- eend $?
- fi
-
- if [[ ! -f ${ROOT}/etc/samba/smb.conf ]] ; then
- touch "${D}"/etc/samba/smb.conf
- fi
-}
-
-pkg_postinst() {
- if use swat ; then
- einfo "swat must be enabled by xinetd:"
- einfo " change the /etc/xinetd.d/swat configuration"
- fi
- einfo "Latest info: README.gentoo in documentation directory"
-}
-
-pkg_postrm(){
- # If stale docs, and one isn't re-emerging the latest version, removes
- # (this is actually a portage bug, though)
- [[ -n ${PF} && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
- rm -rf "${ROOT}"/usr/share/doc/${PF}
-}