If you haven't configured linux kernel before, please consult linux/README before doing that. We have some example configurations files in hipl/test/configs for "typical" systems. You can use one of those as a template, and modify it to suite the needs of your system. Read hipl/test/configs/README before doing so.
The 2.6 kernel series should be compilable with both gcc 2.9x and 3.x series. We recommend the latter.
Download linux kernel 2.6.x.y. Compile the kernel with at least the following options:
Legend: [*] built-in [ ] excluded <M > module < > module capable
Code maturity level options
[*] Prompt for development and/or incomplete code/drivers
Networking support ---> Networking options
[*] TCP/IP networking
<M> Packet socket
[*] IPsec user configuration interface
<M> PF_KEY sockets
<M> IP tunneling
[*] IPv4: IPsec BEET mode
[*] IPv6: IPsec BEET mode
<M> IP: ESP transform
[*] The IPv6 Protocol
<M> IPv6: ESP transformation
<M> IPv6: IPv6-in-IPv6 tunnel
Cryptographic options
<M> Null algorithms
<M> SHA1 digest algorithm
<M> DES and Triple DES EDE cipher algorithms
<M> AES cipher algorithms
<M> AES cipher algorithms (i586)
Device Drivers ---> Network device support
<M> Dummy network device support
Security options --->
[ ] Enable different security models
The hipd probes the necessary kernel modules automatically,