OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / freeswan / klips / doc / klipsNGreq / requirements / 012 / requirement012.tex
1 \subsection{012: /dev/ipsecNNN devices that could be chown(1)ed and chmod(1)ed.}
2
3 \subsubsection{012: Definition of requirement }
4
5 One of the grand ideas of Unix is the notion that ``everything is a file''.  
6
7 As a result, network devices don't show up in /dev/ in a useful way, and they
8 don't have file-modes and file-owners.  Instead you need to deal with them
9 using special commands like {\bf ifconfig}, and special system calls like
10 {\bf bind, setsockopt, ...}
11
12 As a result, it is clear how to establish an IPsec connection from host A to 
13 host B, but it is really not obvious how to establish an IPsec connection 
14 from user UX (process PX) to user UY (process PY).  
15
16 Could a user have his own ipsec.conf file?  
17 How would that file be related to the system's ipsec.conf file?
18
19 Even if the user doesn't have his own ipsec.conf file, how do we implement 
20 per-user or per-process tunnels?  I can imagine what the kernel code looks 
21 like to enforce the restrictions, but what does it look like to the user 
22 process?  Making it look like a named pipe with a file-owner and some 
23 file-permissions is one way... that makes it look more like good-old "core" 
24 unix but less like other networking stuff.  
25
26 \subsubsection{012: response}
27
28 Constructive proposals would be most welcome.
29
30 This feature is not committed to in any form at this time.
31
32
33
34