S jadrom 2.4 som s rozchodením ipsec nikdy nemal problémy. Až teraz. Kompiloval som jednu verziu za druhou (openswan, strongswan a to jak posledné stabilné verzie, tak develope či historické) a furt nič. Nebralo to konca. Hádzalo to chybku už pri jeho spustení.
Na nete som som sa dopátral, že problém je v tom, ako je skompilovaný gawk. Vzhľadom na to, že linuxy mi bežia na gentoo distribúcii, tak ako default je v ebuilde nastavané, že sa má gawk preložiť s voľbou "--enable-switch". To znamená, že zakazuje použitie určitých kľúčových slov ako premenných (lebo sa stávajú syntaxou). Má to svoju logiku a ako som v perexe naznačil, poriadok musí byť.
Problém však je v tom, že openswan i strongswan tento poriadok nerešpektujú (pochopiteľne z historických dôvodov) a teda veselo sa používa kľúčove slovo "default" ako identifikátor. To buhužiaľ gawk naštve a teda to celé nebeží.
Sú v zásade dve možnosti:
- preložiť gawk bez --enable-switch
- prepísať skripty v ipsec
Myslím, že na prvý pohľad je jasné, ktorá cesta je schodnejšia. Skúšal som síce i možnosť 2, teda urobiť nejaké úpravy, ale preliezť všetky zdrojáky a dohľadať všetky možné výskyty sa mi nakoniec nechcelo. Tak som ustúpil od pokroku a upravil si ebuild tak, že som si preložil gawk bez "switch". A ejhľa, ono to hneď začalo bežať....
Je jasné, že je to len otázkou času, než príde iná vec, ktorá pre zmenu bude switch v gawk predpokladať, ale v tejto chvíli je toto riešenie, ktoré funguje.
Komentáre
pochopil som z toho
2 gx
http://www.freeswan.org/
http://www.openswan.org/
http://www.strongswan.org/
:)