Package init
This commit is contained in:
commit
d21f92a7f9
@ -0,0 +1,37 @@
|
||||
From 3761d42e4fe563ad893f14468e98bd1f5a807604 Mon Sep 17 00:00:00 2001
|
||||
From: Ralph Boehme <slow@samba.org>
|
||||
Date: Tue, 17 Jul 2018 12:54:29 +0200
|
||||
Subject: [PATCH 03/27] tevent: fix CID 1437976 dereference before null check
|
||||
|
||||
Signed-off-by: Ralph Boehme <slow@samba.org>
|
||||
Reviewed-by: Volker Lendecke <vl@samba.org>
|
||||
Signed-off-by: root <root@localhost.localdomain>
|
||||
---
|
||||
tevent_threads.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tevent_threads.c b/tevent_threads.c
|
||||
index 21a9b686ba9..a89990f231a 100644
|
||||
--- a/tevent_threads.c
|
||||
+++ b/tevent_threads.c
|
||||
@@ -473,7 +473,7 @@ void _tevent_threaded_schedule_immediate(struct tevent_threaded_context *tctx,
|
||||
#ifdef HAVE_PTHREAD
|
||||
const char *create_location = im->create_location;
|
||||
struct tevent_context *main_ev = NULL;
|
||||
- struct tevent_wrapper_glue *glue = tctx->event_ctx->wrapper.glue;
|
||||
+ struct tevent_wrapper_glue *glue = NULL;
|
||||
int ret, wakeup_fd;
|
||||
|
||||
ret = pthread_mutex_lock(&tctx->event_ctx_mutex);
|
||||
@@ -492,6 +492,8 @@ void _tevent_threaded_schedule_immediate(struct tevent_threaded_context *tctx,
|
||||
return;
|
||||
}
|
||||
|
||||
+ glue = tctx->event_ctx->wrapper.glue;
|
||||
+
|
||||
if ((im->event_ctx != NULL) || (handler == NULL)) {
|
||||
abort();
|
||||
}
|
||||
--
|
||||
2.19.1
|
||||
|
||||
@ -0,0 +1,36 @@
|
||||
From ba991da43469a1844b67fcec19a15ceda409fc3f Mon Sep 17 00:00:00 2001
|
||||
From: Ralph Boehme <slow@samba.org>
|
||||
Date: Tue, 17 Jul 2018 12:59:50 +0200
|
||||
Subject: [PATCH 04/27] tevent: fix CID 1437974 dereference after null check
|
||||
|
||||
Probably a copy/paste error from the tevent_debug() statement a few
|
||||
lines above as at this place we want to pass main_ev directly to
|
||||
tevent_debug() anyway.
|
||||
|
||||
Signed-off-by: Ralph Boehme <slow@samba.org>
|
||||
Reviewed-by: Volker Lendecke <vl@samba.org>
|
||||
|
||||
Autobuild-User(master): Volker Lendecke <vl@samba.org>
|
||||
Autobuild-Date(master): Tue Jul 17 16:21:21 CEST 2018 on sn-devel-144
|
||||
|
||||
Signed-off-by: root <root@localhost.localdomain>
|
||||
---
|
||||
tevent_wrapper.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tevent_wrapper.c b/tevent_wrapper.c
|
||||
index 05c4c06968a..a07696af0a4 100644
|
||||
--- a/tevent_wrapper.c
|
||||
+++ b/tevent_wrapper.c
|
||||
@@ -347,7 +347,7 @@ struct tevent_context *_tevent_context_wrapper_create(struct tevent_context *mai
|
||||
/*
|
||||
* wrappers conflict with nesting
|
||||
*/
|
||||
- tevent_debug(main_ev->wrapper.glue->main_ev, TEVENT_DEBUG_FATAL,
|
||||
+ tevent_debug(main_ev, TEVENT_DEBUG_FATAL,
|
||||
"%s: %s() conflicts with nesting\n",
|
||||
__func__, location);
|
||||
errno = EINVAL;
|
||||
--
|
||||
2.19.1
|
||||
|
||||
@ -0,0 +1,36 @@
|
||||
From 0da2e9c215f882ea4c331ac4f17738913beb7404 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Schneider <asn@samba.org>
|
||||
Date: Mon, 14 Jan 2019 11:59:59 +0100
|
||||
Subject: [PATCH 21/27] lib:tevent: Use correct C99 initializer for tevent_req
|
||||
|
||||
Signed-off-by: Andreas Schneider <asn@samba.org>
|
||||
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
|
||||
Signed-off-by: root <root@localhost.localdomain>
|
||||
---
|
||||
tevent_req.c | 10 ++++++----
|
||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/tevent_req.c b/tevent_req.c
|
||||
index 76e27b8f7e9..7821d9ae734 100644
|
||||
--- a/tevent_req.c
|
||||
+++ b/tevent_req.c
|
||||
@@ -84,10 +84,12 @@ struct tevent_req *_tevent_req_create(TALLOC_CTX *mem_ctx,
|
||||
}
|
||||
|
||||
*req = (struct tevent_req) {
|
||||
- .internal.private_type = type,
|
||||
- .internal.create_location = location,
|
||||
- .internal.state = TEVENT_REQ_IN_PROGRESS,
|
||||
- .internal.trigger = tevent_create_immediate(req)
|
||||
+ .internal = {
|
||||
+ .private_type = type,
|
||||
+ .create_location = location,
|
||||
+ .state = TEVENT_REQ_IN_PROGRESS,
|
||||
+ .trigger = tevent_create_immediate(req),
|
||||
+ },
|
||||
};
|
||||
|
||||
data = talloc_zero_size(req, data_size);
|
||||
--
|
||||
2.19.1
|
||||
|
||||
106
libtevent.spec
Normal file
106
libtevent.spec
Normal file
@ -0,0 +1,106 @@
|
||||
%{!?python3_sitearch: %define python3_sitearch %(%{__python3} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
|
||||
|
||||
Name: libtevent
|
||||
Version: 0.9.37
|
||||
Release: 4
|
||||
Summary: Tevent is an event system based on the talloc memory management library.
|
||||
License: LGPLv3+
|
||||
URL: http://tevent.samba.org
|
||||
Source0: http://samba.org/ftp/tevent/tevent-%{version}.tar.gz
|
||||
|
||||
Patch6000: 6000-tevent-fix-CID-1437976-dereference-before-null-check.patch
|
||||
Patch6001: 6001-tevent-fix-CID-1437974-dereference-after-null-check.patch
|
||||
Patch6002: 6002-lib-tevent-Use-correct-C99-initializer-for-tevent_re.patch
|
||||
|
||||
BuildRequires: gcc libtirpc-devel docbook-style-xsl doxygen libxslt git
|
||||
BuildRequires: python2-devel python2-talloc-devel >= 2.1.0 libtalloc-devel >= 2.1.0
|
||||
BuildRequires: python3-devel python3-talloc-devel >= 2.0.7
|
||||
|
||||
Provides: bundled(libreplace)
|
||||
|
||||
|
||||
%description
|
||||
Tevent is an event system based on the talloc memory management library. It is the core event system used in Samba.
|
||||
The low level tevent has support for many event types, including timers, signals, and the classic file descriptor events.
|
||||
Tevent also provide helpers to deal with asynchronous code providing the tevent_req (tevent request) functions.
|
||||
|
||||
%package devel
|
||||
Summary: Libraries and header files for tevent
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: libtalloc-devel%{?_isa} >= 2.0.7 pkgconfig
|
||||
|
||||
%description devel
|
||||
Libraries and header files for tevent
|
||||
|
||||
%package -n python2-tevent
|
||||
Summary: Python 2 libraries files for tevent
|
||||
Requires: libtevent%{?_isa} = %{version}-%{release}
|
||||
|
||||
%{?python_provide:%python_provide python2-tevent}
|
||||
|
||||
%description -n python2-tevent
|
||||
Python2 libraries files for tevent
|
||||
|
||||
%package -n python3-tevent
|
||||
Summary: Python 3 libraries files for tevent
|
||||
Requires: libtevent%{?_isa} = %{version}-%{release}
|
||||
|
||||
%{?python_provide:%python_provide python3-tevent}
|
||||
|
||||
%description -n python3-tevent
|
||||
Python3 libraries files for tevent
|
||||
|
||||
%package help
|
||||
Summary: Man for tevent
|
||||
Requires: man
|
||||
|
||||
%description help
|
||||
Man for tevent
|
||||
|
||||
%prep
|
||||
%autosetup -n tevent-%{version} -p1 -Sgit
|
||||
|
||||
%build
|
||||
|
||||
pathfix.py -npi %{__python2} buildtools/bin/waf
|
||||
|
||||
%configure --disable-rpath --bundled-libraries=NONE --builtin-libraries=replace --extra-python=%{__python3}
|
||||
|
||||
%make_build V=1
|
||||
doxygen doxy.config
|
||||
|
||||
%install
|
||||
%make_install
|
||||
find $RPM_BUILD_ROOT -name "*.so*" -exec chmod -c +x {} \;
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_mandir}
|
||||
cp -a ./doc/man/* $RPM_BUILD_ROOT/%{_mandir}/
|
||||
|
||||
%check
|
||||
%make_build check
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%{_libdir}/libtevent.so.*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/tevent.h
|
||||
%{_libdir}/libtevent.so
|
||||
%{_libdir}/pkgconfig/tevent.pc
|
||||
|
||||
%files -n python2-tevent
|
||||
%{python2_sitearch}/*
|
||||
|
||||
%files -n python3-tevent
|
||||
%{python3_sitearch}/*
|
||||
|
||||
%files help
|
||||
%exclude %{_mandir}/man3/todo*
|
||||
%{_mandir}/man3/tevent*
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Sep 3 2019 wubo<wubo40@huawei.com> - 0.9.37-4
|
||||
- Package init
|
||||
BIN
tevent-0.9.37.tar.gz
Normal file
BIN
tevent-0.9.37.tar.gz
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user