Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
---|---|---|---|---|---|---|
0001-Fix-FTBFS-for-gnu-kfreebsd.patch | Fix FTBFS for gnu/kfreebsd | Serafeim Zanikolas <sez@debian.org> | no | debian | 2012-04-01 | |
0002-Sanitize-Makefile.patch | Sanitize Makefile Use debian CFLAGS and LDFLAGS instead of upstream's |
Gregory Potamianos <greg.potamianos@gmail.com> | no | 2014-09-18 | ||
0003-testserv-fix-endianness-issue.patch | testserv: fix endianness issue Building beanstalkd on big-endian systems (such as s390x, ppc64 and spart64) currently fails on the test phase, indicating an error in mustforksrv(). Digging a bit deeper, it turns out this is a type-casting issue between size_t (unsigned long int) and socklen_t (unsigned int): on these systems, size_t is 8 bytes, while socklen_t is only 4. These being big-endian systems, actually casting a (size_t *) pointer as (socklen_t *) will set the 4 most significant bytes, rather the least-significant ones, leading to unexpected results. To better illustrate this, on s390x this code: size_t sz = 0; *(socklen_t *)&sz = 4; printf("*(socklen_t *)&sz = %d, sz = %ld\n", *(socklen_t *)&sz, sz); produces the following output: *(socklen_t *)&sz = 4, sz = 17179869184 where 17179869184 = 4 << 32 Fix this by avoiding the cast from size_to to sockaddr_t altogether. |
Apollon Oikonomopoulos <apoikos@debian.org> | no | 2020-09-23 |