Regression with applications which expects bind(AF_UNSPEC) with INADDR_ANY to work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Lucid |
Fix Released
|
Low
|
Herton R. Krzesinski | ||
Maverick |
Fix Released
|
Low
|
Herton R. Krzesinski | ||
Oneiric |
Fix Released
|
Low
|
Herton R. Krzesinski |
Bug Description
SRU Justification
Impact
bind(AF_UNSPEC) to INADDR_ANY doesn't work anymore, breaking some legacy applications
Fix
upstream commit 29c486df6a20843
Testcase
small C program below
=======
commit d0733d2e29b65 (Check for mistakenly passed in non-IPv4 address), causes regressions in applications which expects bind(AF_UNSPEC) with INADDR_ANY to work. It was reported at https:/
Testcase:
#include <stdio.h>
#include <sys/socket.h>
#include <string.h>
#include <linux/in.h>
int main(int argc, char **argv)
{
struct sockaddr_in addr;
int fd, r;
fd = socket(PF_INET, SOCK_STREAM, 0);
memset(&addr, 0, sizeof(struct sockaddr_in));
r = bind(fd, (struct sockaddr *)&addr, sizeof(addr));
if (!r)
printf(
else
printf("ERROR: too strict AF_INET check\n");
close(fd);
}
Changed in linux (Ubuntu): | |
status: | New → Invalid |
Changed in linux (Ubuntu Lucid): | |
importance: | Undecided → Low |
Changed in linux (Ubuntu Maverick): | |
importance: | Undecided → Low |
Changed in linux (Ubuntu Oneiric): | |
importance: | Undecided → Low |
Changed in linux (Ubuntu Lucid): | |
assignee: | nobody → Herton R. Krzesinski (herton) |
Changed in linux (Ubuntu Maverick): | |
assignee: | nobody → Herton R. Krzesinski (herton) |
Changed in linux (Ubuntu Oneiric): | |
assignee: | nobody → Herton R. Krzesinski (herton) |
Changed in linux (Ubuntu Lucid): | |
status: | New → In Progress |
Changed in linux (Ubuntu Maverick): | |
status: | New → In Progress |
Changed in linux (Ubuntu Oneiric): | |
status: | New → In Progress |
description: | updated |
Changed in linux (Ubuntu Lucid): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Maverick): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Oneiric): | |
status: | In Progress → Fix Committed |
This bug is awaiting verification that the kernel for Oneiric in -proposed solves the problem (3.0.0-15.24). Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification- needed- oneiric' to 'verification- done-oneiric' .
If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.
See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation how to enable and use -proposed. Thank you!