diff --git a/.conman.metadata b/.conman.metadata index 2244590..801deaf 100644 --- a/.conman.metadata +++ b/.conman.metadata @@ -1 +1 @@ -b8b8ba0c2b784e3260c64fc916c56aacaf14989d SOURCES/conman-0.2.7.tar.bz2 +4b845f45040ae45e2c62165395f2b4e39988f7a0 SOURCES/conman-0.2.8.tar.gz diff --git a/.gitignore b/.gitignore index 931ae2f..160f19c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/conman-0.2.7.tar.bz2 +SOURCES/conman-0.2.8.tar.gz diff --git a/SOURCES/conman-0.2.5-openfiles.patch b/SOURCES/conman-0.2.5-openfiles.patch deleted file mode 100644 index e479b48..0000000 --- a/SOURCES/conman-0.2.5-openfiles.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urpN conman-0.2.5/etc/conman.sysconfig conman-0.2.5-openfiles/etc/conman.sysconfig ---- conman-0.2.5/etc/conman.sysconfig 2007-05-01 05:46:18.000000000 +0200 -+++ conman-0.2.5-openfiles/etc/conman.sysconfig 2011-12-14 10:34:57.362003774 +0100 -@@ -35,3 +35,8 @@ - # is not reloaded. - ## - # SIGHUP_RELOAD="1" -+ -+## -+# Specify the maximum number of open files -+## -+# NOFILE=10000 diff --git a/SOURCES/conman-0.2.5-strftime.patch b/SOURCES/conman-0.2.5-strftime.patch deleted file mode 100644 index ccbc940..0000000 --- a/SOURCES/conman-0.2.5-strftime.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -urpN conman-0.2.5.orig/util-str.c conman-0.2.5/util-str.c ---- conman-0.2.5.orig/util-str.c 2009-02-13 07:11:56.000000000 +0100 -+++ conman-0.2.5/util-str.c 2013-02-20 13:19:12.666727781 +0100 -@@ -254,37 +254,31 @@ int substitute_string(char *dst, size_t - - char * create_long_time_string(time_t t) - { -- char *p; -+ char buf[160]; - struct tm tm; -- const int len = 25; /* YYYY-MM-DD HH:MM:SS ZONE + NUL */ - -- if (!(p = malloc(len))) { -- out_of_memory(); -- } - get_localtime(&t, &tm); - -- if (strftime(p, len, "%Y-%m-%d %H:%M:%S %Z", &tm) == 0) { -+ if (strftime(buf, sizeof(buf), "%Y-%m-%d %H:%M:%S %Z", &tm) == 0) { - log_err(0, "strftime() failed"); -+ buf[0] = '\0'; - } -- return(p); -+ return(create_string(buf)); - } - - - char * create_short_time_string(time_t t) - { -- char *p; -+ char buf[80]; - struct tm tm; -- const int len = 12; /* MM-DD HH:MM + NUL */ - -- if (!(p = malloc(len))) { -- out_of_memory(); -- } - get_localtime(&t, &tm); - -- if (strftime(p, len, "%m-%d %H:%M", &tm) == 0) { -+ if (strftime(buf, sizeof(buf), "%m-%d %H:%M", &tm) == 0) { - log_err(0, "strftime() failed"); -+ buf[0] = '\0'; - } -- return(p); -+ return(create_string(buf)); - } - - diff --git a/SOURCES/conman-0.2.7-hack-around-overflow-issue.patch b/SOURCES/conman-0.2.7-hack-around-overflow-issue.patch deleted file mode 100644 index d03f47e..0000000 --- a/SOURCES/conman-0.2.7-hack-around-overflow-issue.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/server-esc.c b/server-esc.c -index 3616f67..bae7b8f 100644 ---- a/server-esc.c -+++ b/server-esc.c -@@ -333,7 +333,7 @@ static void perform_log_replay(obj_t *client) - p = logfile->bufInPtr - n; - if (p >= logfile->buf) { /* no wrap needed */ - memcpy(ptr, p, n); -- ptr += n; -+ ptr = (ptr - buf + n > MAX_BUF_SIZE - 1 ? buf + MAX_BUF_SIZE - 1 : ptr + n); - } - else { /* wrap backwards */ - m = logfile->buf - p; -@@ -351,6 +351,9 @@ static void perform_log_replay(obj_t *client) - * for this string. We could get away with just sprintf() here. - */ - len = &buf[sizeof(buf)] - ptr; -+ if( len > sizeof(buf) - 1 ) { /* Ensure buffer overflow cannot happen */ -+ len = sizeof(buf) - 1; -+ } - n = snprintf((char *) ptr, len, "%sEnd log replay of console [%s]%s", - CONMAN_MSG_PREFIX, console->name, CONMAN_MSG_SUFFIX); - assert((n >= 0) && (n < len)); diff --git a/SOURCES/conman-0.2.7-num_threads.patch b/SOURCES/conman-0.2.7-num_threads.patch deleted file mode 100644 index 2a8aa64..0000000 --- a/SOURCES/conman-0.2.7-num_threads.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -urp conman-0.2.7.orig/server-ipmi.c conman-0.2.7/server-ipmi.c ---- conman-0.2.7.orig/server-ipmi.c 2011-04-22 01:23:49.000000000 +0200 -+++ conman-0.2.7/server-ipmi.c 2014-10-20 18:10:52.915756862 +0200 -@@ -95,6 +95,7 @@ void ipmi_init(int num_consoles) - return; - } - num_threads = ((num_consoles - 1) / IPMI_ENGINE_CONSOLES_PER_THREAD) + 1; -+ num_threads = MIN(num_threads, IPMICONSOLE_THREAD_COUNT_MAX); - - if (ipmiconsole_engine_init(num_threads, 0) < 0) { - log_err(0, "Unable to start IPMI SOL engine"); diff --git a/SPECS/conman.spec b/SPECS/conman.spec index 80171c5..f45b942 100644 --- a/SPECS/conman.spec +++ b/SPECS/conman.spec @@ -1,18 +1,14 @@ Name: conman -Version: 0.2.7 -Release: 15%{?dist} +Version: 0.2.8 +Release: 1%{?dist} Summary: ConMan - The Console Manager Group: Applications/System -License: GPLv2+ -URL: http://home.gna.org/conman/ -Source0: http://download.gna.org/%{name}/%{version}/%{name}-%{version}.tar.bz2 +License: GPLv3+ +URL: https://dun.github.io/conman/ +Source0: https://github.com/dun/%{name}/archive/%{name}-%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: %{name}.service Source2: %{name}.logrotate -Patch1: conman-0.2.5-openfiles.patch -Patch2: conman-0.2.5-strftime.patch -Patch3: conman-0.2.7-num_threads.patch -Patch4: conman-0.2.7-hack-around-overflow-issue.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -38,23 +34,16 @@ Its features include: - executing Expect scripts across multiple consoles in parallel %prep -%setup -q -%patch1 -b .openfiles -p1 -%patch2 -b .strftime -p1 -%patch3 -b .num_threads -p1 -%patch4 -b .overflowfixhack -p1 +%setup -qn %{name}-%{name}-%{version} + +# fix paths +sed -i -e 's|lib\/|share\/|g' lib/examples/*.exp + +# fix shebang +sed -i -e 's|\/usr\/bin\/env perl|\/usr\/bin\/perl|g' conmen + %build -# not really lib material, more like share -mv lib share -chmod -x share/examples/*.exp -%{__perl} -pi.orig -e 's|cd lib|cd share|g' \ - Makefile.in -%{__perl} -pi -e 's|lib\/|share\/|g' \ - Makefile.in share/examples/*.exp -# don't strip the bins on install, let find-debug.sh do it -%{__perl} -pi -e 's|-m 755 -s conman|-m 755 conman|g' \ - Makefile.in # This is a bit rough, it builds as PIE client tool (conman) # in addition to PIEing daemon (conmand). But for finer granularity, @@ -80,8 +69,12 @@ install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name} # make log directories mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name} mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}.old -# examples don't belong in datadir... -rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/examples + +# examples don't belong in libdir... +rm -rf $RPM_BUILD_ROOT%/usr/lib/%{name}/examples +# move scripts to proper place +mv $RPM_BUILD_ROOT/usr/lib/%{name} $RPM_BUILD_ROOT%{_datadir}/%{name} + ## these shouldn't be executable #chmod -x $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} # rhel7 uses systemd instead of sysV init, /etc/sysconfig/conman @@ -126,8 +119,9 @@ fi %files %defattr(-,root,root,-) -%doc AUTHORS ChangeLog COPYING FAQ NEWS -%doc share/examples +%license COPYING +%doc AUTHORS FAQ NEWS +%doc lib/examples %config(noreplace) %{_sysconfdir}/%{name}.conf # rhel7 does not use this file: #%config(noreplace) %{_sysconfdir}/sysconfig/%{name} @@ -141,6 +135,9 @@ fi %{_mandir}/*/* %changelog +* Tue Aug 29 2017 Ondrej Vasik - 0.2.8-1 +- updated to 0.2.8, spec cleanups, drop overflow hack(#1435840) + * Fri May 13 2016 David Sommerseth - 0.2.7-15 - Fix lost CFFLAGS/CXXFLAGS/LDFLAGS from RELRO/PIE fixes in 0.2.7-13 (1092546)