Add IP_OPTIONS and the multicast-related setsockopts to the
list of IP setsockopts the Linux emulator recognizes. Explicitly disallow IP_HDRINCL since Linux's handling of raw output is different than BSD's. Closes PR#kern/2111. Submitted by: y-nakaga@ccs.mt.nec.co.jp (Yoshihisa NAKAGAWA)
This commit is contained in:
parent
4c69e7b9d5
commit
66ff6a3c1b
@ -25,7 +25,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: linux.h,v 1.10 1996/10/25 16:20:22 bde Exp $
|
||||
* $Id: linux.h,v 1.11 1996/11/05 02:04:37 smpatel Exp $
|
||||
*/
|
||||
|
||||
#ifndef _I386_LINUX_LINUX_H_
|
||||
@ -465,6 +465,14 @@ struct trapframe;
|
||||
|
||||
#define LINUX_IP_TOS 1
|
||||
#define LINUX_IP_TTL 2
|
||||
#define LINUX_IP_HDRINCL 3
|
||||
#define LINUX_IP_OPTIONS 4
|
||||
|
||||
#define LINUX_IP_MULTICAST_IF 32
|
||||
#define LINUX_IP_MULTICAST_TTL 33
|
||||
#define LINUX_IP_MULTICAST_LOOP 34
|
||||
#define LINUX_IP_ADD_MEMBERSHIP 35
|
||||
#define LINUX_IP_DROP_MEMBERSHIP 36
|
||||
|
||||
/* Sound system defines */
|
||||
#define LINUX_SNDCTL_DSP_RESET 0x5000
|
||||
|
@ -25,7 +25,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: linux_socket.c,v 1.3 1995/12/15 03:06:57 peter Exp $
|
||||
* $Id: linux_socket.c,v 1.4 1996/03/02 19:37:59 peter Exp $
|
||||
*/
|
||||
|
||||
/* XXX we use functions that might not exist. */
|
||||
@ -82,6 +82,19 @@ static int linux_to_bsd_ip_sockopt(int opt)
|
||||
return IP_TOS;
|
||||
case LINUX_IP_TTL:
|
||||
return IP_TTL;
|
||||
case LINUX_IP_OPTIONS:
|
||||
return IP_OPTIONS;
|
||||
case LINUX_IP_MULTICAST_IF:
|
||||
return IP_MULTICAST_IF;
|
||||
case LINUX_IP_MULTICAST_TTL:
|
||||
return IP_MULTICAST_TTL;
|
||||
case LINUX_IP_MULTICAST_LOOP:
|
||||
return IP_MULTICAST_LOOP;
|
||||
case LINUX_IP_ADD_MEMBERSHIP:
|
||||
return IP_ADD_MEMBERSHIP;
|
||||
case LINUX_IP_DROP_MEMBERSHIP:
|
||||
return IP_DROP_MEMBERSHIP;
|
||||
case LINUX_IP_HDRINCL:
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
|
@ -25,7 +25,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: linux.h,v 1.10 1996/10/25 16:20:22 bde Exp $
|
||||
* $Id: linux.h,v 1.11 1996/11/05 02:04:37 smpatel Exp $
|
||||
*/
|
||||
|
||||
#ifndef _I386_LINUX_LINUX_H_
|
||||
@ -465,6 +465,14 @@ struct trapframe;
|
||||
|
||||
#define LINUX_IP_TOS 1
|
||||
#define LINUX_IP_TTL 2
|
||||
#define LINUX_IP_HDRINCL 3
|
||||
#define LINUX_IP_OPTIONS 4
|
||||
|
||||
#define LINUX_IP_MULTICAST_IF 32
|
||||
#define LINUX_IP_MULTICAST_TTL 33
|
||||
#define LINUX_IP_MULTICAST_LOOP 34
|
||||
#define LINUX_IP_ADD_MEMBERSHIP 35
|
||||
#define LINUX_IP_DROP_MEMBERSHIP 36
|
||||
|
||||
/* Sound system defines */
|
||||
#define LINUX_SNDCTL_DSP_RESET 0x5000
|
||||
|
@ -25,7 +25,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: linux_socket.c,v 1.3 1995/12/15 03:06:57 peter Exp $
|
||||
* $Id: linux_socket.c,v 1.4 1996/03/02 19:37:59 peter Exp $
|
||||
*/
|
||||
|
||||
/* XXX we use functions that might not exist. */
|
||||
@ -82,6 +82,19 @@ static int linux_to_bsd_ip_sockopt(int opt)
|
||||
return IP_TOS;
|
||||
case LINUX_IP_TTL:
|
||||
return IP_TTL;
|
||||
case LINUX_IP_OPTIONS:
|
||||
return IP_OPTIONS;
|
||||
case LINUX_IP_MULTICAST_IF:
|
||||
return IP_MULTICAST_IF;
|
||||
case LINUX_IP_MULTICAST_TTL:
|
||||
return IP_MULTICAST_TTL;
|
||||
case LINUX_IP_MULTICAST_LOOP:
|
||||
return IP_MULTICAST_LOOP;
|
||||
case LINUX_IP_ADD_MEMBERSHIP:
|
||||
return IP_ADD_MEMBERSHIP;
|
||||
case LINUX_IP_DROP_MEMBERSHIP:
|
||||
return IP_DROP_MEMBERSHIP;
|
||||
case LINUX_IP_HDRINCL:
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user