Todo list for l2tpd
These are things that I consider major outstading bugs in l2tpd. This
is not the equivalent to Bugzilla or anything like that as this is a
page that I manually update, so this page is only for major bugs
that may take some time to fix.
- Clean up issues with memory alignments
- There are many places in l2tpd where the code assumes that it is
dealing with x86 memory alignment rules. Stuff like taking a buffer and
casting it as an in memory data structure. While this works OK (but
certainly isn't clean) for the x86 architecture, its one of the things
that causes problems when trying to compile l2tpd on other
- The inclusion of a NULL byte in the challenge will foul up
- Because much of the code involved in the challenge response
authentication mechanism uses string functions, strlen() for example,
NULL bytes (0x00) in the challenge (possibly in the challenge response
as well?) will cause the string functions to not deal with the whole
challenge. For example, strlen() is used to control the number of bytes
of challenge that is sent to the MD5Update() function. If there is a NULL
byte in the challenge, then only the bytes prior to the NULL will get
sent into MD5Update(), resulting in an incorrect response being created.
We should probably maintain a seperate variable that specifies the
number of bytes in the challenge (derived from the length field of the
challenge AVP), rather than depending upon strlen().