From 9c0835fd7262c50cf6a91380df1654daffe2c977 Mon Sep 17 00:00:00 2001 From: Chia-chi Yeh Date: Thu, 30 Jun 2011 22:59:18 -0700 Subject: [PATCH] VPN: correct the netmask for IPv4. Change-Id: Id6e955af129d55120676d0d9cfe75388671aa367 --- services/jni/com_android_server_connectivity_Vpn.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/jni/com_android_server_connectivity_Vpn.cpp b/services/jni/com_android_server_connectivity_Vpn.cpp index a0ea92b91a034..62d7636321c0b 100644 --- a/services/jni/com_android_server_connectivity_Vpn.cpp +++ b/services/jni/com_android_server_connectivity_Vpn.cpp @@ -244,7 +244,7 @@ static int set_routes(const char *name, const char *routes) break; } - in_addr_t mask = prefix ? (~0 << (32 - prefix)) : 1; + in_addr_t mask = prefix ? (~0 << (32 - prefix)) : 0x80000000; *as_in_addr(&rt4.rt_genmask) = htonl(mask); if (ioctl(inet4, SIOCADDRT, &rt4) && errno != EEXIST) { count = (errno == EINVAL) ? BAD_ARGUMENT : SYSTEM_ERROR; @@ -394,7 +394,7 @@ static jint setRoutes(JNIEnv *env, jobject thiz, jstring jName, } count = set_routes(name, routes); if (count < 0) { - throwException(env, count, "Cannot set address"); + throwException(env, count, "Cannot set route"); count = -1; }