net: add PPP on PPTP Network Server (PPPoPNS) driver.

Signed-off-by: Chia-chi Yeh <chiachi@android.com>

ppopns: dont include px_proto define in if_pppopns.h

Change-Id: I27e687667db5b45182562f4a517a2e6cec6b1350
Signed-off-by: Dima Zavin <dima@android.com>
diff --git a/include/linux/if_pppox.h b/include/linux/if_pppox.h
index 5a27abd..44400c5 100644
--- a/include/linux/if_pppox.h
+++ b/include/linux/if_pppox.h
@@ -29,6 +29,7 @@
 #endif /* __KERNEL__ */
 #include <linux/if_pppol2tp.h>
 #include <linux/if_pppolac.h>
+#include <linux/if_pppopns.h>
 
 /* For user-space programs to pick up these definitions
  * which they wouldn't get otherwise without defining __KERNEL__
@@ -63,7 +64,8 @@
 #define PX_PROTO_OL2TP 1 /* Now L2TP also */
 #define PX_PROTO_PPTP  2
 #define PX_PROTO_OLAC  3
-#define PX_MAX_PROTO   4
+#define PX_PROTO_OPNS  4
+#define PX_MAX_PROTO   5
 
 struct sockaddr_pppox {
 	__kernel_sa_family_t sa_family;       /* address family, AF_PPPOX */
@@ -178,6 +180,12 @@
 	__u8	sequencing;
 };
 
+struct pppopns_opt {
+	__u16	local;
+	__u16	remote;
+	__u32	sequence;
+};
+
 #include <net/sock.h>
 
 struct pppox_sock {
@@ -189,6 +197,7 @@
 		struct pppoe_opt pppoe;
 		struct pptp_opt  pptp;
 		struct pppolac_opt lac;
+		struct pppopns_opt pns;
 	} proto;
 	__be16			num;
 };