Trying to setup a ipsec/l2tp connection from a Windows XP client to a SPARC server I always get bus errors from l2tpns. This makes the package totally unusable on SPARC. I did some digging around and have determined that the bus errors are caused by unaligned memory accesses (SPARC requires that 2 byte accesses are 2 byte aligned, 4 byte are 4 and 8 byte are 8). I enclose a patch which replaces all direct casts with uses of get_unalignedxx and put_unalignedxx macros. On the SPARC platform these macros call local functions that do bytewise copying but on other platforms they do the original direct accesses. In cases where large structures need aligning the patch defines stack copies of the data and uses memcpy to transfer the data to/from the network buffers. There are a couple of places where I'm not sure if data should be converted to network byte order. I have marked these with FIXME in the patch. Note most seem to affect clustering so all should be ok if l2tpns is run on a homogeneous set of servers. Finally is also added -Wcast-align to the gcc command line. This causes the compiler to warn where potential misalignments are. I added some extra (void*) casts to get rid of what seem to be false warnings. The patch has only been tested on sparc64 and allows me to connect my Windows XP machine using l2tp. Regards Richard
Dear submitter, as the package l2tpns has just been removed from the Debian archive unstable we hereby close the associated bug reports. We are sorry that we couldn't deal with your issue properly. For details on the removal, please see https://bugs.debian.org/929610 The version of this package that was in Debian prior to this removal can still be found using http://snapshot.debian.org/. This message was generated automatically; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org. Debian distribution maintenance software pp. Scott Kitterman (the ftpmaster behind the curtain)