diff options
author | Kumar Sanghvi <kumar.sanghvi@stericsson.com> | 2010-10-12 16:14:43 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-13 17:40:34 -0400 |
commit | b3d6255388de0680a14f0907deb7b7f4fa0d25d5 (patch) | |
tree | 8eaefeadef047a8bc6fcc269669ac4288e41ef64 /include | |
parent | 7368ddf144afd79456fd853fa25f33e31da003a9 (diff) |
Phonet: 'connect' socket implementation for Pipe controller
Based on suggestion by Rémi Denis-Courmont to implement 'connect'
for Pipe controller logic, this patch implements 'connect' socket
call for the Pipe controller logic.
The patch does following:-
- Removes setsockopts for PNPIPE_CREATE and PNPIPE_DESTROY
- Adds setsockopt for setting the Pipe handle value
- Implements connect socket call
- Updates the Pipe controller logic
User-space should now follow below sequence with Pipe controller:-
-socket
-bind
-setsockopt for PNPIPE_PIPE_HANDLE
-connect
-setsockopt for PNPIPE_ENCAP_IP
-setsockopt for PNPIPE_ENABLE
GPRS/3G data has been tested working fine with this.
Signed-off-by: Kumar Sanghvi <kumar.sanghvi@stericsson.com>
Acked-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/phonet.h | 3 | ||||
-rw-r--r-- | include/net/phonet/pep.h | 4 |
2 files changed, 3 insertions, 4 deletions
diff --git a/include/linux/phonet.h b/include/linux/phonet.h index e27cbf931740..26c8df786918 100644 --- a/include/linux/phonet.h +++ b/include/linux/phonet.h | |||
@@ -36,10 +36,9 @@ | |||
36 | /* Socket options for SOL_PNPIPE level */ | 36 | /* Socket options for SOL_PNPIPE level */ |
37 | #define PNPIPE_ENCAP 1 | 37 | #define PNPIPE_ENCAP 1 |
38 | #define PNPIPE_IFINDEX 2 | 38 | #define PNPIPE_IFINDEX 2 |
39 | #define PNPIPE_CREATE 3 | 39 | #define PNPIPE_PIPE_HANDLE 3 |
40 | #define PNPIPE_ENABLE 4 | 40 | #define PNPIPE_ENABLE 4 |
41 | /* unused slot */ | 41 | /* unused slot */ |
42 | #define PNPIPE_DESTROY 6 | ||
43 | 42 | ||
44 | #define PNADDR_ANY 0 | 43 | #define PNADDR_ANY 0 |
45 | #define PNADDR_BROADCAST 0xFC | 44 | #define PNADDR_BROADCAST 0xFC |
diff --git a/include/net/phonet/pep.h b/include/net/phonet/pep.h index def6cfa3f451..b60b28c99e87 100644 --- a/include/net/phonet/pep.h +++ b/include/net/phonet/pep.h | |||
@@ -46,8 +46,8 @@ struct pep_sock { | |||
46 | u8 init_enable; /* auto-enable at creation */ | 46 | u8 init_enable; /* auto-enable at creation */ |
47 | u8 aligned; | 47 | u8 aligned; |
48 | #ifdef CONFIG_PHONET_PIPECTRLR | 48 | #ifdef CONFIG_PHONET_PIPECTRLR |
49 | u16 remote_pep; | 49 | u8 pipe_state; |
50 | u8 pipe_state; | 50 | struct sockaddr_pn remote_pep; |
51 | #endif | 51 | #endif |
52 | }; | 52 | }; |
53 | 53 | ||