[Patch] Basic fixes for 64 bit platforms
Hello, I have installed bird on my new 64-bit (Opteron-based) router. And it crashed as soon as I tried "show route" command via "birdc". I checked the compilation logs and found out that the bird code makes a Very Bad Assumption (sizeof(int)>=sizeof(void*)) in several places. On AMD64 and several other 64-bit platforms pointers are 64 bit long, but "int" is still 32-bit and not enough to hold a pointer value. I made a patch (attached) which fixes all the bugs which were detected by the compiler (complaining about integer/pointer size mismatch). Greets, Jacek
Hi!
I have installed bird on my new 64-bit (Opteron-based) router. And it crashed as soon as I tried "show route" command via "birdc". I checked the compilation logs and found out that the bird code makes a Very Bad Assumption (sizeof(int)>=sizeof(void*)) in several places. On AMD64 and several other 64-bit platforms pointers are 64 bit long, but "int" is still 32-bit and not enough to hold a pointer value.
I made a patch (attached) which fixes all the bugs which were detected by the compiler (complaining about integer/pointer size mismatch).
Patch looks good for me. Pavel -- teflon -- maybe it is a trademark, but it should not be.
participants (2)
-
Jacek Konieczny -
Pavel Machek