bits/in.h does not include IP_UNICAST_IF from linux/in.h

Bug #1065640 reported by Erich E. Hoover
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
eglibc (Ubuntu)
Fix Released
Undecided
Unassigned
Precise
Won't Fix
Undecided
Unassigned
Quantal
Won't Fix
Undecided
Unassigned
Raring
Fix Released
Undecided
Unassigned
wine1.4 (Ubuntu)
Fix Released
Low
Scott Ritchie
Precise
Won't Fix
Undecided
Unassigned
Quantal
Won't Fix
Undecided
Unassigned
Raring
Fix Released
Low
Scott Ritchie

Bug Description

SRU for wine1.4 follows:

[IMPACT]

 * Users of specific Wine programs that use broadcast packets on the network have them not function

[TESTCASE]

 * Run a Wine program that produces broadcast packets on a network interface

[Regression Potential]

 * Possible consequences due to enabling support for this feature if users were unintentionally relying on it being disabled

[Original report]

#define IP_UNICAST_IF 50 from linux/in.h is needed for Wine to support binding to interfaces and support broadcast packets on that interface. It appears that bits/in.h is manually merged with this file and that it is inappropriate to include linux/in.h directly in user-space applications.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in glibc (Ubuntu):
status: New → Confirmed
Revision history for this message
Scott Ritchie (scottritchie) wrote :

This bug can be worked around in Wine with this patch: http://paste.ubuntu.com/1275612/

Changed in wine1.4 (Ubuntu):
assignee: nobody → Scott Ritchie (scottritchie)
status: New → Triaged
importance: Undecided → Low
Revision history for this message
Erich E. Hoover (ehoover) wrote :

You shouldn't need to undefine IP_UNICAST_IF, since it's not in bits/in.h it shouldn't be defined at all (linux/in.h is not included, as it has conflicts with bits/in.h). Alternatively, you can use configure to define the flag for you, e.g.:
CFLAGS="-DIP_UNICAST_IF=50" ./configure

Revision history for this message
Scott Ritchie (scottritchie) wrote :

Thanks Erich, I'll do it in configure since that is a purely build-time packaging layer change.

Revision history for this message
Erich E. Hoover (ehoover) wrote :

Awesome, thanks so much. Do you think there's an appropriate upstream location to report this issue? It seems that bits/in.h is rather distro-specific, but maybe I'm wrong.

description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package wine1.4 - 1.4.1-0ubuntu2

---------------
wine1.4 (1.4.1-0ubuntu2) raring; urgency=low

  * Drop wine1.4-common package and use :any depends for multiarch
  * Remove recommends on gettext (LP: #954029)
  * Add CFLAGS="-DIP_UNICAST_IF=50" to configure (LP: #1065640)
  * Remove wine1.2 and wine1.3 dummy packages
    - Replaces all versions of them
 -- Scott Ritchie <email address hidden> Fri, 09 Nov 2012 14:06:10 -0800

Changed in wine1.4 (Ubuntu Raring):
status: Triaged → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Colin Watson (cjwatson)
affects: glibc (Ubuntu Precise) → eglibc (Ubuntu Precise)
Changed in eglibc (Ubuntu Precise):
status: New → Confirmed
Changed in eglibc (Ubuntu Quantal):
status: New → Confirmed
Revision history for this message
Adam Conrad (adconrad) wrote :

This is fixed in glibc 2.16 and beyond. Is there any compelling reason we really need this backported to precise?

Changed in eglibc (Ubuntu Raring):
status: Confirmed → Fix Released
Revision history for this message
Erich E. Hoover (ehoover) wrote :

No, this feature is only supported by kernels 3.4rc1+, so there's no good reason to backport the advertising of this option. Thanks Adam!

Revision history for this message
Erich E. Hoover (ehoover) wrote :

Oh, so I just realized that this option _is_ available on Quantal. So, it doesn't make sense to backport it to Precise, but it might make sense to make it available on Quantal.

Revision history for this message
Scott Ritchie (scottritchie) wrote :

Can I remove the cflag from the Raring wine package then? (but add it to the quantal/precise one)?

Revision history for this message
Erich E. Hoover (ehoover) wrote :

Yes, you should actually be able to remove it completely since Maarten Lankhorst checked in a commit to define it if it's not found: (7ce6a2dfd434d8c61d5bd1525a555c19706ac5a2).

Revision history for this message
Scott Ritchie (scottritchie) wrote :

That patch isn't in wine1.4 yet, only wine1.5, so it needs to stay for a bit. Maybe it can be put in wine1.4.2.

Revision history for this message
Scott Ritchie (scottritchie) wrote :

Not going to fix for wine1.4 backports, though I may backport wine1.6.

Changed in wine1.4 (Ubuntu Quantal):
status: New → Won't Fix
Changed in wine1.4 (Ubuntu Precise):
status: New → Won't Fix
Changed in eglibc (Ubuntu Quantal):
status: Confirmed → Won't Fix
Revision history for this message
Scott Ritchie (scottritchie) wrote :

I'm guessing we won't fix this for precise eglibc either since it can be worked around in Wine and there are no other apparent symptoms.

Changed in eglibc (Ubuntu Precise):
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.