New version

- Dropped pptpsetup-mppe, vector-remove-fix, and call-use-after-free-fix
  patches (all upstreamed)
- Dropped loading of nf_conntrack_pptp kernel module which was workaround and
  according to upstream only hides real problems
This commit is contained in:
Jaroslav Škarvada 2016-12-02 16:30:08 +01:00
parent 4c030e05b7
commit 935709b256
7 changed files with 11 additions and 125 deletions

3
.gitignore vendored
View File

@ -1,2 +1 @@
pptp-1.7.2.tar.gz
/pptp-1.8.0.tar.gz
pptp-*.tar.gz

View File

@ -1,2 +0,0 @@
# Load nf_conntrack_pptp.ko at boot
nf_conntrack_pptp

View File

@ -1,47 +0,0 @@
--- pptp-1.7.2/pptpsetup 2009-06-01 15:18:25.000000000 +0100
+++ pptp-1.7.2/pptpsetup 2009-06-01 15:19:25.000000000 +0100
@@ -43,14 +43,6 @@
sub create {
my $TUNNEL = shift;
- # if encryption is requested, check for support in kernel and pppd
- if ( $ENCRYPT ) {
- &Check_MPPE_in_kernel
- or die "$0: couldn't find MPPE support in kernel.\n";
- &Check_MPPE_in_pppd
- or die "$0: couldn't find MPPE support in pppd.\n";
- }
-
# input validation
($TUNNEL) = $TUNNEL =~ m{^(\w+)$}
or die "$0: invalid tunnel name.\nTry '$0 --help' for more information.\n";
@@ -180,29 +172,6 @@
exit;
}
-### AUXILIAR SUBS ###
-
-sub Check_MPPE_in_kernel {
- my $command = q/modprobe ppp-compress-18/;
- if (system( $command ) == 0) {
- # no error!
- return 1;
- } else {
- return 0;
- }
-}
-
-sub Check_MPPE_in_pppd {
- my $command = q/strings `which pppd`|grep -i mppe|wc --lines/;
- my $answer = `$command`;
- if ($answer > 0) {
- # ok!
- return 1;
- } else {
- return 0;
- }
-}
-
__END__
=head1 NAME

View File

@ -1,23 +0,0 @@
diff --git a/pptp_ctrl.c b/pptp_ctrl.c
index 9864374..416f416 100644
--- a/pptp_ctrl.c
+++ b/pptp_ctrl.c
@@ -928,6 +928,7 @@ int ctrlp_disp(PPTP_CONN * conn, void * buffer, size_t size)
PPTP_HEADER_CTRL(PPTP_CALL_CLEAR_NTFY), packet->call_id,
1, PPTP_GENERAL_ERROR_NONE, 0, 0, {0}
};
+ int i;
log("Received Call Clear Request.");
if (vector_contains(conn->call, ntoh16(packet->call_id))) {
PPTP_CALL * call;
@@ -935,8 +936,9 @@ int ctrlp_disp(PPTP_CONN * conn, void * buffer, size_t size)
if (call->callback != NULL)
call->callback(conn, call, CALL_CLOSE_RQST);
if (pptp_send_ctrl_packet(conn, &reply, sizeof(reply))) {
+ i = call->call_id;
pptp_call_destroy(conn, call);
- log("Call closed (RQST) (call id %d)", (int) call->call_id);
+ log("Call closed (RQST) (call id %d)", i);
}
}
break;

View File

@ -1,34 +0,0 @@
From ca29b846ccb924df388a1d396a25325c32b2e346 Mon Sep 17 00:00:00 2001
From: James Cameron <quozl@laptop.org>
Date: Thu, 22 Jan 2015 10:36:45 +1100
Subject: [PATCH] vector: remove clobbered heap
While running vector_test.c under valgrind, observed read and writes
beyond allocated memory.
Cause was bad calculation of length to move when an item is being
removed from a vector.
Combined with a shortage of memory (a malloc fail in pptp_conn_open),
may be a cause of
https://bugzilla.redhat.com/show_bug.cgi?id=1183627
---
vector.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/vector.c b/vector.c
index d0b5027..703e523 100644
--- a/vector.c
+++ b/vector.c
@@ -115,7 +115,7 @@ int vector_remove(VECTOR *v, int key)
assert(v != NULL);
if ((tmp =binary_search(v,key)) == NULL) return FALSE;
assert(tmp >= v->item && tmp < v->item + v->size);
- memmove(tmp, tmp + 1, (v->size - (v->item - tmp) - 1) * sizeof(*(v->item)));
+ memmove(tmp, tmp + 1, (v->size - (tmp - v->item) - 1) * sizeof(*(v->item)));
v->size--;
return TRUE;
}
--
1.8.3.2

View File

@ -1,17 +1,12 @@
Name: pptp
Version: 1.8.0
Release: 9%{?dist}
Version: 1.9.0
Release: 1%{?dist}
Summary: Point-to-Point Tunneling Protocol (PPTP) Client
Group: Applications/Internet
License: GPLv2+
URL: http://pptpclient.sourceforge.net/
Source0: http://downloads.sf.net/pptpclient/pptp-%{version}.tar.gz
Source1: pptp-tmpfs.conf
Source2: modules-load.conf
Patch0: pptp-1.7.2-pptpsetup-mppe.patch
# patch from upstream
Patch1: pptp-1.8.0-vector-remove-fix.patch
Patch2: pptp-1.8.0-call-use-after-free-fix.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -nu)
BuildRequires: /usr/bin/pod2man
BuildRequires: perl-generators
@ -35,13 +30,6 @@ tunnels.
%prep
%setup -q
# Don't check for MPPE capability in kernel and pppd at all because current
# Fedora releases and EL ≥ 5 include MPPE support out of the box (#502967)
%patch0 -p1 -b .mppe
%patch1 -p1 -b .vector-remove-fix
%patch2 -p1 -b .call-use-after-free-fix
# Pacify rpmlint
perl -pi -e 's/install -o root -m 555 pptp/install -m 755 pptp/;' Makefile
@ -57,7 +45,6 @@ install -d -m 750 %{buildroot}%{_localstatedir}/run/pptp
install -d -m 755 %{buildroot}%{_prefix}/lib/tmpfiles.d
install -p -m 644 %{SOURCE1} %{buildroot}%{_prefix}/lib/tmpfiles.d/pptp.conf
install -Dpm 0644 %{SOURCE2} %{buildroot}%{_usr}/lib/modules-load.d/pptp.conf
%clean
rm -rf %{buildroot}
@ -68,7 +55,6 @@ rm -rf %{buildroot}
%doc ChangeLog Documentation/DESIGN.PPTP PROTOCOL-SECURITY
%{_prefix}/lib/tmpfiles.d/pptp.conf
%{_sbindir}/pptp
%{_usr}/lib/modules-load.d/pptp.conf
%{_mandir}/man8/pptp.8*
%dir %attr(750,root,root) %{_localstatedir}/run/pptp/
%config(noreplace) %{_sysconfdir}/ppp/options.pptp
@ -79,6 +65,13 @@ rm -rf %{buildroot}
%{_mandir}/man8/pptpsetup.8*
%changelog
* Fri Dec 2 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 1.9.0-1
- New version
- Dropped pptpsetup-mppe, vector-remove-fix, and call-use-after-free-fix
patches (all upstreamed)
- Dropped loading of nf_conntrack_pptp kernel module which was workaround and
according to upstream only hides real problems
* Mon Nov 21 2016 Jaroslav Škarvada <jskarvad@redhat.com> - 1.8.0-9
- Autoloaded nf_conntrack_pptp kernel module
Resolves: rhbz#1373689

View File

@ -1 +1 @@
4efce9f263e2c3f38d79d9df222476de pptp-1.8.0.tar.gz
b2117b377f65294a9786f80f0235d308 pptp-1.9.0.tar.gz