From 8843130c660b781decad0ea2e4914ad90f34fa2d Mon Sep 17 00:00:00 2001 From: Sipwise Jenkins Builder Date: Sat, 1 Feb 2014 19:48:40 +0100 Subject: [PATCH 01/19] Release new version 2.3.5+0~mr3.3 --- debian/changelog | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/debian/changelog b/debian/changelog index 3588aaede..27ccb322a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,14 @@ +ngcp-mediaproxy-ng (2.3.5+0~mr3.3) unstable; urgency=low + + [ Richard Fuchs ] + * [eec41b8] fix mem leak + * [3c4b387] fix the "media address" parameter to comply with the docs + * [0f99aea] fix simulator rtcp-mux bug + + [ Sipwise Jenkins Builder ] + + -- Sipwise Jenkins Builder Sat, 01 Feb 2014 19:48:40 +0100 + ngcp-mediaproxy-ng (2.3.5) unstable; urgency=low * update desired address family (based on "direction") when branching From ff05e26274e878021d3404b3f626c989794085dd Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Tue, 18 Feb 2014 09:44:58 -0500 Subject: [PATCH 02/19] adding experimental CLI client for ng protocol --- utils/ng-client | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100755 utils/ng-client diff --git a/utils/ng-client b/utils/ng-client new file mode 100755 index 000000000..ade86e2cf --- /dev/null +++ b/utils/ng-client @@ -0,0 +1,98 @@ +#!/usr/bin/perl + +use warnings; +use strict; +use Bencode qw(bencode bdecode); +use Getopt::Long; +use Socket; +use Socket6; +use Data::Dumper; + +my %options = ('proxy-address' => 'localhost', 'proxy-port' => 2223); + +GetOptions( + 'proxy-address=s' => \$options{'proxy-address'}, + 'proxy-port=s' => \$options{'proxy-port'}, + 'from-tag=s' => \$options{'from-tag'}, + 'to-tag=s' => \$options{'to-tag'}, + 'call-id=s' => \$options{'call-id'}, + 'protocol=s' => \$options{'transport protocol'}, + 'trust-address' => \$options{'trust address'}, + 'symmetric' => \$options{'symmetric'}, + 'asymmetric' => \$options{'asymmetric'}, + 'replace-origin' => \$options{'replace-origin'}, + 'replace-session-connection' => \$options{'replace-session connection'}, + 'client-address=s' => \$options{'client-address'}, + 'sdp=s' => \$options{'sdp'}, + 'sdp-file=s' => \$options{'sdp-file'}, + 'ICE=s' => \$options{'ICE'}, + 'force' => \$options{'force'}, + 'v|verbose' => \$options{'verbose'}, +) or die; + +my $cmd = shift(@ARGV) or die; + +my %packet = (command => $cmd); + +for my $x (split(',', 'from-tag,to-tag,call-id,transport protocol,media address,ICE')) { + defined($options{$x}) and $packet{$x} = $options{$x}; +} +for my $x (split(',', 'trust address,symmetric,asymmetric,force')) { + defined($options{$x}) and push(@{$packet{flags}}, $x); +} +for my $x (split(',', 'origin,session connection')) { + defined($options{'replace-' . $x}) and push(@{$packet{replace}}, $x); +} + +if (defined($options{sdp})) { + $packet{sdp} = $options{sdp}; +} +elsif (defined($options{'sdp-file'})) { + open(F, '<', $options{'sdp-file'}) or die $!; + my @sdp = or die $!; + close(F); + $packet{sdp} = join('', @sdp); +} +elsif (@ARGV && $ARGV[0] eq 'sdp') { + shift(@ARGV); + $options{'client-address'} or die; + my ($ca, $cp); + if ($ca = inet_pton(AF_INET, $options{'client-address'})) { + $ca = inet_ntop(AF_INET, $ca); + $cp = "IP4"; + } + elsif ($ca = inet_pton(AF_INET6, $options{'client-address'})) { + $ca = inet_ntop(AF_INET6, $ca); + $cp = "IP6"; + } + $ca or die; + my $sdp = "v=0\r\no=- 12345 67890 IN $cp $ca\r\ns=session\r\nc=IN $cp $ca\r\nt=0 0\r\n"; + + $packet{sdp} = $sdp; +} + +$options{verbose} and print Dumper \%packet; + +my $cookie = rand() . ' '; +my $packet = $cookie . bencode(\%packet); + +socket(S, AF_INET, SOCK_DGRAM, 0) or die $!; +send(S, $packet, 0, pack_sockaddr_in($options{'proxy-port'}, inet_aton($options{'proxy-address'}))) or die $!; +my $ret; +recv(S, $ret, 0x10000, 0); +$ret =~ s/^\Q$cookie\E//s or die $ret; +my $resp = bdecode($ret, 1); + +#print Dumper $resp; +#exit; + +exists($$resp{result}) or die Dumper $resp; +print("Result: \"$$resp{result}\"\n"); +if ($$resp{result} eq 'error') { + print("Error reason: \"$$resp{'error-reason'}\"\n"); + exit(1); +} +if (defined($$resp{sdp})) { + print("New SDP:\n-----8<-----8<-----8<-----8<-----8<-----\n$$resp{sdp}\n". + "----->8----->8----->8----->8----->8-----\n"); +} From a768d1f1fcd5e4aea6dc37569356c027f2213405 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:36:04 +0400 Subject: [PATCH 03/19] Use /sbin/nologin as a shell It also prints descriptive message why one cannot use this account which could be useful. Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 4893b7ec8..23442b062 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -108,7 +108,7 @@ rm -rf %{buildroot} %pre /usr/sbin/groupadd -r mediaproxy-ng 2> /dev/null || : -/usr/sbin/usradd -r -g mediaproxy-ng -s /bin/false -c "mediaproxy-ng daemon" \ +/usr/sbin/usradd -r -g mediaproxy-ng -s /sbin/nologin -c "mediaproxy-ng daemon" \ -d %{_docdir}/%{name}-%{version}-%{release} mediaproxy-ng \ 2> /dev/null || : From e4a6fe9b9e4bfc268b1c70f2d203f54272ff169d Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:37:29 +0400 Subject: [PATCH 04/19] Typo fix: usradd -> useradd Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 23442b062..fe2f1387b 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -108,7 +108,7 @@ rm -rf %{buildroot} %pre /usr/sbin/groupadd -r mediaproxy-ng 2> /dev/null || : -/usr/sbin/usradd -r -g mediaproxy-ng -s /sbin/nologin -c "mediaproxy-ng daemon" \ +/usr/sbin/useradd -r -g mediaproxy-ng -s /sbin/nologin -c "mediaproxy-ng daemon" \ -d %{_docdir}/%{name}-%{version}-%{release} mediaproxy-ng \ 2> /dev/null || : From d2f7fd1b55c29d7456d4614f24a284cd40fae644 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:39:14 +0400 Subject: [PATCH 05/19] Use /var/lib/mediaproxy-ng as a home directory Using /use/share/doc/something isn't a good choice since the entire directory /usr/share/doc could be empty due to system settings. Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index fe2f1387b..0aa4a636e 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -109,7 +109,7 @@ rm -rf %{buildroot} %pre /usr/sbin/groupadd -r mediaproxy-ng 2> /dev/null || : /usr/sbin/useradd -r -g mediaproxy-ng -s /sbin/nologin -c "mediaproxy-ng daemon" \ - -d %{_docdir}/%{name}-%{version}-%{release} mediaproxy-ng \ + -d %{_sharedstatedir}/mediaproxy-ng mediaproxy-ng \ 2> /dev/null || : From 5a327261b24e6bab13b79bfd62b468b18e58609d Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:45:51 +0400 Subject: [PATCH 06/19] Enable SysV symlinks only during install See also: https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Syntax Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 0aa4a636e..ed8ae8489 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -114,7 +114,9 @@ rm -rf %{buildroot} %post -/sbin/chkconfig --add mediaproxy-ng +if [ $1 -eq 1 ]; then + /sbin/chkconfig --add %{name} || : +fi %post dkms From fcc33339e4a6a5f8967f4c87edd3ef9f8b07d28c Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:47:30 +0400 Subject: [PATCH 07/19] Stop service and remove SysV symling only during uninstall See also: https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Syntax Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index ed8ae8489..bf8b7a158 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -128,8 +128,10 @@ true %preun -/sbin/service mediaproxy-ng stop -/sbin/chkconfig --del mediaproxy-ng +if [ $1 = 0 ] ; then + /sbin/service %{name} stop >/dev/null 2>&1 + /sbin/chkconfig --del %{name} +fi %preun dkms From fe81d21324d673f948075efc19495b2ba9dde35e Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:50:36 +0400 Subject: [PATCH 08/19] Update URL Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index bf8b7a158..86ca19cc7 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -5,7 +5,7 @@ Summary: The Sipwise NGCP mediaproxy-ng Group: System Environment/Daemons License: GPLv3 -URL: https://github.com/crocodilertc/mediaproxy-ng +URL: https://github.com/sipwise/mediaproxy-ng Source: %{name}-%{version}.tar.gz Conflicts: %{name}-kernel < %{version} BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) From f8a288f15fd44c0e2bb0a782b7e5142b12fbf5b4 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:52:44 +0400 Subject: [PATCH 09/19] Update Source0 address Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 86ca19cc7..35f2eb49b 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -6,7 +6,7 @@ Summary: The Sipwise NGCP mediaproxy-ng Group: System Environment/Daemons License: GPLv3 URL: https://github.com/sipwise/mediaproxy-ng -Source: %{name}-%{version}.tar.gz +Source0: https://github.com/sipwise/mediaproxy-ng/archive/%{version}/%{name}-%{version}.tar.gz Conflicts: %{name}-kernel < %{version} BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) From bfdda80b9c459c2289997f0b277962a4ee43ba4a Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:55:38 +0400 Subject: [PATCH 10/19] Rename el/README.md Signed-off-by: Peter Lemenkov --- el/{README.md => README.el.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename el/{README.md => README.el.md} (100%) diff --git a/el/README.md b/el/README.el.md similarity index 100% rename from el/README.md rename to el/README.el.md From c0b10cdffa505fa57cd769d3a14c900e2a7922ca Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 16:58:31 +0400 Subject: [PATCH 11/19] Remove outdated check within spec-file Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 35f2eb49b..7ca8c1438 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -59,8 +59,6 @@ cd .. %install -[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT" - # Install the userspace daemon mkdir -p $RPM_BUILD_ROOT/%{_sbindir} install -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng From b2eca1d4444547c2158a906c779125127abda68a Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:01:03 +0400 Subject: [PATCH 12/19] Remove outdated defattr directive from spec-file Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 7ca8c1438..67d4be15a 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -139,7 +139,6 @@ true %files -%defattr(-,root,root,-) # Userspace daemon %{_sbindir}/mediaproxy-ng @@ -157,13 +156,11 @@ true %files kernel -%defattr(-,root,root,-) /%{_lib}/xtables/libxt_MEDIAPROXY.so %files dkms -%defattr(-,root,root,0755) -%{_usrsrc}/%{name}-%{version}-%{release}/ +%attr(0755,root,root) %{_usrsrc}/%{name}-%{version}-%{release}/ %changelog From a7b81be15ab9643bc4df73bfe9441b3136281745 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:04:03 +0400 Subject: [PATCH 13/19] Preserve timestamps while installing files Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 67d4be15a..d0585932f 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -61,20 +61,20 @@ cd .. %install # Install the userspace daemon mkdir -p $RPM_BUILD_ROOT/%{_sbindir} -install -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng +install -p -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng ## Install the init.d script and configuration file mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d -install -m755 el/mediaproxy-ng.init \ +install -p -m755 el/mediaproxy-ng.init \ $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d/mediaproxy-ng mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig -install -m644 el/mediaproxy-ng.sysconfig \ +install -p -m644 el/mediaproxy-ng.sysconfig \ $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/mediaproxy-ng mkdir -p $RPM_BUILD_ROOT/%{_sharedstatedir}/mediaproxy-ng # Install the iptables plugin mkdir -p $RPM_BUILD_ROOT/%{_lib}/xtables -install -m755 iptables-extension/libxt_MEDIAPROXY.so \ +install -p -m755 iptables-extension/libxt_MEDIAPROXY.so \ $RPM_BUILD_ROOT/%{_lib}/xtables/libxt_MEDIAPROXY.so # Install the documentation @@ -90,11 +90,11 @@ install -m644 el/README.md \ ## DKMS module source install mkdir -p $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release} -install -m644 kernel-module/Makefile \ +install -p -m644 kernel-module/Makefile \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/Makefile -install -m644 kernel-module/xt_MEDIAPROXY.c \ +install -p -m644 kernel-module/xt_MEDIAPROXY.c \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.c -install -m644 kernel-module/xt_MEDIAPROXY.h \ +install -p -m644 kernel-module/xt_MEDIAPROXY.h \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.h sed "s/__VERSION__/%{version}-%{release}/g" debian/dkms.conf.in > \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/dkms.conf From 7262fab5f7ba3fa80d9e204b27b910de327f5020 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:05:17 +0400 Subject: [PATCH 14/19] Simplify file installation during rpm build Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index d0585932f..a84484030 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -60,21 +60,17 @@ cd .. %install # Install the userspace daemon -mkdir -p $RPM_BUILD_ROOT/%{_sbindir} -install -p -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng +install -D -p -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng ## Install the init.d script and configuration file -mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d -install -p -m755 el/mediaproxy-ng.init \ +install -D -p -m755 el/mediaproxy-ng.init \ $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d/mediaproxy-ng -mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig -install -p -m644 el/mediaproxy-ng.sysconfig \ +install -D -p -m644 el/mediaproxy-ng.sysconfig \ $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/mediaproxy-ng mkdir -p $RPM_BUILD_ROOT/%{_sharedstatedir}/mediaproxy-ng # Install the iptables plugin -mkdir -p $RPM_BUILD_ROOT/%{_lib}/xtables -install -p -m755 iptables-extension/libxt_MEDIAPROXY.so \ +install -D -p -m755 iptables-extension/libxt_MEDIAPROXY.so \ $RPM_BUILD_ROOT/%{_lib}/xtables/libxt_MEDIAPROXY.so # Install the documentation @@ -89,12 +85,11 @@ install -m644 el/README.md \ $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release}/README.el.md ## DKMS module source install -mkdir -p $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release} -install -p -m644 kernel-module/Makefile \ +install -D -p -m644 kernel-module/Makefile \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/Makefile -install -p -m644 kernel-module/xt_MEDIAPROXY.c \ +install -D -p -m644 kernel-module/xt_MEDIAPROXY.c \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.c -install -p -m644 kernel-module/xt_MEDIAPROXY.h \ +install -D -p -m644 kernel-module/xt_MEDIAPROXY.h \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.h sed "s/__VERSION__/%{version}-%{release}/g" debian/dkms.conf.in > \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/dkms.conf From a0f409b025a5484b3e40aa4f59ae94ce37ef592c Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:12:00 +0400 Subject: [PATCH 15/19] Simplify docs processing during rpm build Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index a84484030..477290dde 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -73,17 +73,6 @@ mkdir -p $RPM_BUILD_ROOT/%{_sharedstatedir}/mediaproxy-ng install -D -p -m755 iptables-extension/libxt_MEDIAPROXY.so \ $RPM_BUILD_ROOT/%{_lib}/xtables/libxt_MEDIAPROXY.so -# Install the documentation -mkdir -p $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release} -install -m644 README.md \ - $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release}/README.md -install -m644 debian/changelog \ - $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release}/changelog -install -m644 debian/copyright \ - $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release}/copyright -install -m644 el/README.md \ - $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version}-%{release}/README.el.md - ## DKMS module source install install -D -p -m644 kernel-module/Makefile \ $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/Makefile @@ -143,11 +132,7 @@ true %dir %{_sharedstatedir}/mediaproxy-ng # Documentation -%dir %{_docdir}/%{name}-%{version}-%{release} -%doc %{_docdir}/%{name}-%{version}-%{release}/README.md -%doc %{_docdir}/%{name}-%{version}-%{release}/changelog -%doc %{_docdir}/%{name}-%{version}-%{release}/copyright -%doc %{_docdir}/%{name}-%{version}-%{release}/README.el.md +%doc LICENSE README.md el/README.el.md debian/changelog debian/copyright %files kernel From ea369b0a4966b88a41cac8d0a20e3a6efa79b9de Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:12:28 +0400 Subject: [PATCH 16/19] Rename RPM_BUILD_ROOT to buildroot It's generally considered a good practice to follow the consistent macro naming scheme. So we shouldn't mix RPM_BUILD_ROOT and buildroot although they have the same value. At least this helps to avoid confusion for beginners. Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 477290dde..9ef1fa47a 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -60,28 +60,28 @@ cd .. %install # Install the userspace daemon -install -D -p -m755 daemon/mediaproxy-ng $RPM_BUILD_ROOT/%{_sbindir}/mediaproxy-ng +install -D -p -m755 daemon/mediaproxy-ng %{buildroot}/%{_sbindir}/mediaproxy-ng ## Install the init.d script and configuration file install -D -p -m755 el/mediaproxy-ng.init \ - $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d/mediaproxy-ng + %{buildroot}/%{_sysconfdir}/rc.d/init.d/mediaproxy-ng install -D -p -m644 el/mediaproxy-ng.sysconfig \ - $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/mediaproxy-ng -mkdir -p $RPM_BUILD_ROOT/%{_sharedstatedir}/mediaproxy-ng + %{buildroot}/%{_sysconfdir}/sysconfig/mediaproxy-ng +mkdir -p %{buildroot}/%{_sharedstatedir}/mediaproxy-ng # Install the iptables plugin install -D -p -m755 iptables-extension/libxt_MEDIAPROXY.so \ - $RPM_BUILD_ROOT/%{_lib}/xtables/libxt_MEDIAPROXY.so + %{buildroot}/%{_lib}/xtables/libxt_MEDIAPROXY.so ## DKMS module source install install -D -p -m644 kernel-module/Makefile \ - $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/Makefile + %{buildroot}/%{_usrsrc}/%{name}-%{version}-%{release}/Makefile install -D -p -m644 kernel-module/xt_MEDIAPROXY.c \ - $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.c + %{buildroot}/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.c install -D -p -m644 kernel-module/xt_MEDIAPROXY.h \ - $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.h + %{buildroot}/%{_usrsrc}/%{name}-%{version}-%{release}/xt_MEDIAPROXY.h sed "s/__VERSION__/%{version}-%{release}/g" debian/dkms.conf.in > \ - $RPM_BUILD_ROOT/%{_usrsrc}/%{name}-%{version}-%{release}/dkms.conf + %{buildroot}/%{_usrsrc}/%{name}-%{version}-%{release}/dkms.conf %clean From 7a7196f08376380c62b5f324ed42d8237c09630b Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 21 Feb 2014 17:15:32 +0400 Subject: [PATCH 17/19] Update rpm spec-version to the latest (at the moment of this writing) 2.3.5 Signed-off-by: Peter Lemenkov --- el/mediaproxy-ng.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index 9ef1fa47a..b16763d24 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -1,5 +1,5 @@ Name: ngcp-mediaproxy-ng -Version: 2.3.2 +Version: 2.3.5 Release: 0%{?dist} Summary: The Sipwise NGCP mediaproxy-ng From bcc020eefba14f2650b0e9dd1ccad798b17f241f Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Mon, 24 Feb 2014 11:25:43 -0500 Subject: [PATCH 18/19] fix IPv4 TOS if IPv6 is enabled --- daemon/call.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/daemon/call.c b/daemon/call.c index 27d730c8d..059d2000f 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -1176,14 +1176,16 @@ static int get_port6(struct udp_fd *r, u_int16_t p, struct callmaster *m) { nonblock(fd); reuseaddr(fd); - tos = m->conf.tos; + ipv6only(fd, 0); + if (m->conf.tos) + setsockopt(fd, IPPROTO_IP, IP_TOS, &m->conf.tos, sizeof(m->conf.tos)); #ifdef IPV6_TCLASS + tos = m->conf.tos; if (tos) setsockopt(fd, IPPROTO_IPV6, IPV6_TCLASS, &tos, sizeof(tos)); #else #warning "Will not set IPv6 traffic class" #endif - ipv6only(fd, 0); ZERO(sin); sin.sin6_family = AF_INET6; From 99266fcf7082092b97c54f12bb92c8dfecdc43ac Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Mon, 24 Feb 2014 12:42:24 -0500 Subject: [PATCH 19/19] 2.3.6 --- debian/changelog | 6 ++++++ el/mediaproxy-ng.spec | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 27ccb322a..421054010 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +ngcp-mediaproxy-ng (2.3.6) unstable; urgency=low + + * fix IPv4 TOS + + -- Richard Fuchs Mon, 24 Feb 2014 12:40:53 -0500 + ngcp-mediaproxy-ng (2.3.5+0~mr3.3) unstable; urgency=low [ Richard Fuchs ] diff --git a/el/mediaproxy-ng.spec b/el/mediaproxy-ng.spec index b16763d24..76b14d659 100644 --- a/el/mediaproxy-ng.spec +++ b/el/mediaproxy-ng.spec @@ -1,5 +1,5 @@ Name: ngcp-mediaproxy-ng -Version: 2.3.5 +Version: 2.3.6 Release: 0%{?dist} Summary: The Sipwise NGCP mediaproxy-ng