From owner-svn-src-head@FreeBSD.ORG Sat May 2 20:37:41 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 082CB40E; Sat, 2 May 2015 20:37:41 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EA66C127C; Sat, 2 May 2015 20:37:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t42Kbe73083138; Sat, 2 May 2015 20:37:40 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t42KbeZo083137; Sat, 2 May 2015 20:37:40 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201505022037.t42KbeZo083137@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Sat, 2 May 2015 20:37:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r282355 - head/sys/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 May 2015 20:37:41 -0000 Author: glebius Date: Sat May 2 20:37:40 2015 New Revision: 282355 URL: https://svnweb.freebsd.org/changeset/base/282355 Log: After r281643 an #ifdef IFT_FOO preprocessor directive returns false, since types became a enum C type. Some software uses such ifdefs to determine whether an operating systems supports certain interface type. Of course, such check is bogus. E.g. FreeBSD defines about 250 interface types, but supports only around 20. However, we need not upset such software so provide a set of defines. The current set was taken to suffice the dhcpd. Reported & tested by: Guy Yur Modified: head/sys/net/if_types.h Modified: head/sys/net/if_types.h ============================================================================== --- head/sys/net/if_types.h Sat May 2 20:31:27 2015 (r282354) +++ head/sys/net/if_types.h Sat May 2 20:37:40 2015 (r282355) @@ -254,4 +254,20 @@ typedef enum { IFT_PFLOG = 0xf6, /* PF packet filter logging */ IFT_PFSYNC = 0xf7, /* PF packet filter synchronization */ } ifType; + +/* + * Some (broken) software uses #ifdef IFT_TYPE to check whether + * an operating systems supports certain interface type. Lack of + * ifdef leads to a piece of functionality compiled out. + */ +#ifndef BURN_BRIDGES +#define IFT_BRIDGE IFT_BRIDGE +#define IFT_PPP IFT_PPP +#define IFT_PROPVIRTUAL IFT_PROPVIRTUAL +#define IFT_L2VLAN IFT_L2VLAN +#define IFT_L3IPVLAN IFT_L3IPVLAN +#define IFT_IEEE1394 IFT_IEEE1394 +#define IFT_INFINIBAND IFT_INFINIBAND +#endif + #endif /* !_NET_IF_TYPES_H_ */