Age | Commit message (Collapse) | Author |
|
am: 106b0e350a
Change-Id: I505fe1176b5d4c63bbff110ccd5dc8c43b31694f
|
|
am: 83bd1754f3
Change-Id: I9236de96ebe98156d5e9c1295bbef9745ff9ab7d
|
|
am: d7faaf63dc
Change-Id: I238e7659d3da2723865a409f65f0775361cae79d
|
|
Bug: 141248619
Change-Id: I6c77fbc2757140bbb7d144be09c10711ac9970d6
|
|
qt-c2f2-release
Change-Id: Ic81ae663759eed795b0fe256cb241bd391625310
|
|
am: ca7860c5d1 -s ours
am: 8c3910aa89 -s ours
am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history
Change-Id: I55a193dcf2e40c653d67b30091f8167f81d7e8a1
|
|
am: b4b0bd6e43 -s ours
am: 11150b23b4 -s ours
am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history
Change-Id: I80f0f11a97fd022fddc2164cc66c40b938d6437a
|
|
am: ca7860c5d1 -s ours am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history" into qt-r1-dev-plus-aosp
|
|
am: b4b0bd6e43 -s ours
am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history
Change-Id: Iccbcea349daa16b5eea88733a72fd0c0952a839c
|
|
am: ca7860c5d1 -s ours
am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history
Change-Id: Id2edff424477b7d702ff1cf9a916ca886dbfc415
|
|
am: a378c558d6
Change-Id: I6424dfadcd77874edd1095066b1ec612b32eeea1
|
|
am: a378c558d6 -s ours
am skip reason: change_id Ic64426c76135b717a1da7013bc03501c03d19a6b with SHA1 d799900e7b is in history
Change-Id: Iff378e03bc77456d848c051c92db0c8346ca30be
|
|
When the PPTP/L2TP path was introduced, support for the features was
determined simply by opening a socket with the appropriate upstream
socket protocol types. However, it was later found that older kernels
had bugs in their PPTP implementation which silently broke Android's use
of the ppp tunnel, and must not be used.
Unfortunately, some devices ship with CONFIG_PPTP or CONFIG_L2TP enabled
*in addition* to the CONFIG_PPPOPNS or CONFIG_PPPOLAC Android
extensions, but lacked the upstream fixes to PPTP/L2TP. This meant that
mtpd would prefer the broken PPTP/L2TP features over the working
OPNS/OLAC features.
On newer kernels, which do not have broken PPTP/L2TP implementations, we
have explicitly removed the Android OPNS/OLAC changes. This means even
if we "prefer" the deprecated method, it will never be used, and
PPTP/L2TP will always be used instead, which is what we want.
This change maximizes compatibility with older broken kernels without
sacrificing use of the modern path on kernels without the bugs.
Bug: 116424816
Change-Id: Ic64426c76135b717a1da7013bc03501c03d19a6b
Merged-In: Ic64426c76135b717a1da7013bc03501c03d19a6b
(cherry picked from commit 1b5fc73ae98d5e3b7d2c1f10d9dcbc2749355d3e)
|
|
1b5fc73ae9
am: fa917291a8
Change-Id: I72ac34d9fc6d585748f5e185c4cd035d9286ef8c
|
|
am: 1b5fc73ae9
Change-Id: I71bcf23d12c1a3dfbc2860a68dcd70764d38d813
|
|
am: c956cf9485
Change-Id: I369894754eb51e02690b75ef4cf0aba29cedc8a5
|
|
am: 7ea34f7213
Change-Id: I598c09dbb46146c07e1703b0fccf85ed21b31ecb
|
|
|
|
When the PPTP/L2TP path was introduced, support for the features was
determined simply by opening a socket with the appropriate upstream
socket protocol types. However, it was later found that older kernels
had bugs in their PPTP implementation which silently broke Android's use
of the ppp tunnel, and must not be used.
Unfortunately, some devices ship with CONFIG_PPTP or CONFIG_L2TP enabled
*in addition* to the CONFIG_PPPOPNS or CONFIG_PPPOLAC Android
extensions, but lacked the upstream fixes to PPTP/L2TP. This meant that
mtpd would prefer the broken PPTP/L2TP features over the working
OPNS/OLAC features.
On newer kernels, which do not have broken PPTP/L2TP implementations, we
have explicitly removed the Android OPNS/OLAC changes. This means even
if we "prefer" the deprecated method, it will never be used, and
PPTP/L2TP will always be used instead, which is what we want.
This change maximizes compatibility with older broken kernels without
sacrificing use of the modern path on kernels without the bugs.
Bug: 116424816
Change-Id: Ic64426c76135b717a1da7013bc03501c03d19a6b
|
|
am: 35b772680e
Change-Id: Ic8eac481c754f991572b2cae45a47aa25f6a7b3a
|
|
Bug: 126125118
Change-Id: I2f0005421594e2419984500b4abf2bd87b0d26b3
|
|
Bug: 120848293
Change-Id: I4679c3ee7b6f933b6c242aa4593789fafc5c477b
|
|
am: 3828f265bc
Change-Id: I8f35f66a1029d79137a834e95a7f454c70c2eabe
|
|
am: 2634344329
Change-Id: If44deb850ea8570aa547357aab3dee0307100358
|
|
am: ad39bdda13
Change-Id: Ic20ba6f287f2e6a415c87ceb9d3b4b6c992dcadc
|
|
|
|
Bug: 33166666
Test: gerrit uploader
Change-Id: Ibf76f17d63346773322ed922bd7b5c9cc5017594
|
|
MERGE am: 4b307d4c44 -s ours am: 183f9638d5 -s ours
am: 3fff5caba8 -s ours
Change-Id: I128714c3c9750ee9fd1ac7499f870ac72e269a3e
|
|
MERGE am: 4b307d4c44 -s ours
am: 183f9638d5 -s ours
Change-Id: I4829e4069babf40683d0e09a315c35fdc3bc7881
|
|
am: 4b307d4c44 -s ours
Change-Id: I971a86d8a4c5b5de904003a3e5e90af2a80b0ecc
|
|
Change-Id: Iebd3beb4a77cb91342c2b2c4a592c9036970a3d5
|
|
MERGE am: e162f429da -s ours
am: 87bbf0ca6e -s ours
Change-Id: I1a8b13bc879b56a6794a31845ed141d8818f0f80
|
|
MERGE
am: e162f429da -s ours
Change-Id: Id01273b122e879462b1432e7a2cb09a208c9722d
|
|
Change-Id: Ia5bcd81de89ed915b22f3e3836340a65c1511433
|
|
am: 1ffa915af2
Change-Id: Iebd04008b3a1149c5c03ee96b9c1df1a6286da1f
|
|
am: c6bf61f0e0
Change-Id: I8123c4c37aa9ad161150135e13b5a4d29655052e
|
|
am: 9f0bd306a9
Change-Id: I347874ba4ddfbb020fbb210725f6f0b33614b646
|
|
* changes:
mtpd: Use PPTP implementation from upstream kernel
mtpd: pptp: Fix endianness issues in log prints
|
|
Add upstream kernel implementation of PPTP protocol. This code uses
pppopptp-android plugin, which was added to pppd project.
This patch changes the behavior of PPTP part of mtpd tool in a next way:
- check if upstream kernel implementation of PPTP is enabled (in
check_pptp() function)
- if yes, use it:
- create PX_PROTO_PPTP socket (in create_pppox_pptp() function)
- and start pppd with pppopptp-android plugin (in
start_pppd_pptp() function)
- if no, fall back to use Android kernel implementation of PPTP
- create PX_PROTO_OPNS socket (in create_pppox_opns() function)
- and start pppd with pppox module (in start_pppd() function)
mtpd still handles PPTP control packets, while pppd handles PPP packets,
and kernel PPTP driver handles data packets.
After this patch, old implementation (PX_PROTO_OPNS) can be dropped from
Android kernel. After some transition time we can keep only PPTP support
in mtpd and drop OPNS support for good.
In order to use this PPTP implementation, next kernel option should be
enabled:
CONFIG_PPTP=y
For more details see: [1].
[1] https://wiki.linaro.org/LMG/Kernel/PPP
Change-Id: Ia6d54ffe7748bd87424ea74250164b73eb4b6000
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
|
|
"local" and "remote" variables are stored in network endianness. But
those variables are not being converted to host endianness when
printing. So convert them to host endianness when needed. Also change
the type of those variables to __be16 so we can distinguish them easier.
Change-Id: I1521afbcf05db47a2ecba9f0a9028d58cd56a00a
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
|
|
am: a958c04261
Change-Id: I747240404c848bbab79082c700c3c0f76bddff95
|
|
am: a62a985cd6
Change-Id: Ie97955c9a794baffc0b6b5472bfb5dd976f787f0
|
|
am: 123ea675fa
Change-Id: Iebec42f0d6fed219578b76d97fda2fa80f274853
|
|
am: 21c8e631ac
Change-Id: I31b629499061ab1b82f6cbded59fc15618d700e8
|
|
* changes:
mtpd: Use L2TP implementation from mainline kernel
mtpd: l2tp: Fix endianness issues in log prints
mtpd: Remove obsolete way of passing args to pppd
|
|
Add upstream kernel implementation of L2TP protocol (OL2TP). This code
uses pppol2tp-android plugin, which was added to pppd project.
mtpd will try to use OL2TP protocol (upstream) by default. In case if
OL2TP is disabled in kernel, mtpd will fall back to old OLAC protocol.
After this patch, old implementation (PX_PROTO_OLAC) can be dropped from
Android kernel. After some transition time we can keep only OL2TP support
in mtpd and drop OLAC support for good.
In order to use this L2TP implementation, next kernel options should be
enabled:
CONFIG_NET_IPGRE_DEMUX=y
CONFIG_PPPOE=y
CONFIG_L2TP=y
CONFIG_PPPOL2TP=y
For more details see: [1].
[1] https://wiki.linaro.org/LMG/Kernel/PPP
Change-Id: Ifb0e023817039af7a11353c0568b8c3dd234cc53
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
|
|
Tunnel and session variables are obtained from network, thus are stored
in network endianness. Although this fact is mentioned in this comment:
// To avoid unnecessary endianness conversions, tunnels, sessions,
// attributes, and values are all accessed in network order
those variables are not being converted to host endianness when printing.
So convert them to host endianness when printing. Also change the type of
those variables to __be16 so we can distinguish them easier.
Change-Id: If4a147929fbc79ada51ce5c4f6a1e929d76267aa
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
|
|
This Android-specific way of passing args to pppd was added in 4a721df1
to avoid exposing the L2TP secret in /proc/$$/cmdline (b/2325838). But
then 41ab620e removed the secret from the command line altogether. So we
no longer need this hack.
This reverts 4a721df1 ("Use environment variables to pass information to
pppd.").
Change-Id: I0bbe7424c94bdcfb45c8198fa49f8b5c33bf9db6
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
|
|
Change-Id: If2b00a904c524a8555819038ebc89220e1107954
|
|
c7f0cf5a30
am: da21b1ada7
Change-Id: I932705c7220245d824089ce32fe43f2db62a1348
|