Fri Nov 3 17:27:49 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>

* sysdeps/mach/hurd/sendto.c: Don't pass BINDING arg to
	socket_create_address.
	* sysdeps/mach/hurd/connect.c: Likewise.
	* sysdeps/mach/hurd/bind.c: Likewise.

	* hurd/hurdprio.c (_hurd_priority_which_map): Pass threadwaits
	args to proc_getprocinfo.
	* sysdeps/mach/hurd/getpriority.c: Likewise.

	* hurd/hurdmsg.c (_S_msg_report_wait): New stub function.
This commit is contained in:
Roland McGrath 1995-11-03 22:42:06 +00:00
parent 27cc33c3b4
commit 853f0eead1
8 changed files with 66 additions and 61 deletions

View File

@ -1,3 +1,16 @@
Fri Nov 3 17:27:49 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/sendto.c: Don't pass BINDING arg to
socket_create_address.
* sysdeps/mach/hurd/connect.c: Likewise.
* sysdeps/mach/hurd/bind.c: Likewise.
* hurd/hurdprio.c (_hurd_priority_which_map): Pass threadwaits
args to proc_getprocinfo.
* sysdeps/mach/hurd/getpriority.c: Likewise.
* hurd/hurdmsg.c (_S_msg_report_wait): New stub function.
Thu Nov 2 19:24:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Define as common.

View File

@ -32,8 +32,8 @@ Cambridge, MA 02139, USA. */
/* Snarfing and frobbing the init ports. */
kern_return_t
_S_msg_get_init_port (mach_port_t msgport, mach_port_t auth, int which,
mach_port_t *result, mach_msg_type_name_t *result_type)
_S_msg_get_init_port (mach_port_t msgport, mach_port_t auth, int which,
mach_port_t *result, mach_msg_type_name_t *result_type)
{
AUTHCHECK;
*result_type = MACH_MSG_TYPE_MOVE_SEND;
@ -44,7 +44,7 @@ _S_msg_get_init_port (mach_port_t msgport, mach_port_t auth, int which,
kern_return_t
_S_msg_set_init_port (mach_port_t msgport, mach_port_t auth,
int which, mach_port_t port)
int which, mach_port_t port)
{
error_t err;
@ -59,9 +59,9 @@ _S_msg_set_init_port (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_get_init_ports (mach_port_t msgport, mach_port_t auth,
mach_port_t **ports,
mach_msg_type_name_t *ports_type,
mach_msg_type_number_t *nports)
mach_port_t **ports,
mach_msg_type_name_t *ports_type,
mach_msg_type_number_t *nports)
{
mach_msg_type_number_t i;
error_t err;
@ -93,7 +93,7 @@ _S_msg_get_init_ports (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_set_init_ports (mach_port_t msgport, mach_port_t auth,
mach_port_t *ports, mach_msg_type_number_t nports)
mach_port_t *ports, mach_msg_type_number_t nports)
{
mach_msg_type_number_t i;
error_t err;
@ -158,7 +158,7 @@ get_int (int which, int *value)
kern_return_t
_S_msg_get_init_int (mach_port_t msgport, mach_port_t auth,
int which, int *value)
int which, int *value)
{
AUTHCHECK;
@ -167,7 +167,7 @@ _S_msg_get_init_int (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_get_init_ints (mach_port_t msgport, mach_port_t auth,
int **values, mach_msg_type_number_t *nvalues)
int **values, mach_msg_type_number_t *nvalues)
{
error_t err;
mach_msg_type_number_t i;
@ -246,7 +246,7 @@ set_int (int which, int value)
kern_return_t
_S_msg_set_init_int (mach_port_t msgport, mach_port_t auth,
int which, int value)
int which, int value)
{
AUTHCHECK;
@ -255,7 +255,7 @@ _S_msg_set_init_int (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_set_init_ints (mach_port_t msgport, mach_port_t auth,
int *values, mach_msg_type_number_t nvalues)
int *values, mach_msg_type_number_t nvalues)
{
error_t err;
mach_msg_type_number_t i;
@ -278,8 +278,8 @@ _S_msg_set_init_ints (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_get_fd (mach_port_t msgport, mach_port_t auth,
int which, mach_port_t *result, mach_msg_type_name_t *result_type)
_S_msg_get_fd (mach_port_t msgport, mach_port_t auth, int which,
mach_port_t *result, mach_msg_type_name_t *result_type)
{
AUTHCHECK;
@ -295,7 +295,7 @@ _S_msg_get_fd (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_set_fd (mach_port_t msgport, mach_port_t auth,
int which, mach_port_t port)
int which, mach_port_t port)
{
AUTHCHECK;
@ -307,8 +307,8 @@ _S_msg_set_fd (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_get_env_variable (mach_port_t msgport,
char *variable,
char **data, mach_msg_type_number_t *datalen)
char *variable,
char **data, mach_msg_type_number_t *datalen)
{
const char *value = getenv (variable);
@ -324,9 +324,9 @@ _S_msg_get_env_variable (mach_port_t msgport,
kern_return_t
_S_msg_set_env_variable (mach_port_t msgport, mach_port_t auth,
char *variable,
char *value,
int replace)
char *variable,
char *value,
int replace)
{
AUTHCHECK;
@ -337,7 +337,7 @@ _S_msg_set_env_variable (mach_port_t msgport, mach_port_t auth,
kern_return_t
_S_msg_get_environment (mach_port_t msgport,
char **data, mach_msg_type_number_t *datalen)
char **data, mach_msg_type_number_t *datalen)
{
/* Pack the environment into an array with nulls separating elements. */
if (__environ != NULL)
@ -369,7 +369,7 @@ _S_msg_get_environment (mach_port_t msgport,
kern_return_t
_S_msg_set_environment (mach_port_t msgport, mach_port_t auth,
char *data, mach_msg_type_number_t datalen)
char *data, mach_msg_type_number_t datalen)
{
int _hurd_split_args (char *, mach_msg_type_number_t, char **);
int envc;
@ -433,19 +433,26 @@ _S_msg_clear_some_exec_flags (mach_port_t process, mach_port_t auth,
kern_return_t
_S_msg_get_dtable (mach_port_t process,
mach_port_t refport,
portarray_t *dtable,
mach_msg_type_name_t *dtablePoly,
mach_msg_type_number_t *dtableCnt)
mach_port_t refport,
portarray_t *dtable,
mach_msg_type_name_t *dtablePoly,
mach_msg_type_number_t *dtableCnt)
{ return EOPNOTSUPP; }
kern_return_t
_S_msg_set_dtable (mach_port_t process,
mach_port_t refport,
portarray_t dtable,
mach_msg_type_number_t dtableCnt)
mach_port_t refport,
portarray_t dtable,
mach_msg_type_number_t dtableCnt)
{ return EOPNOTSUPP; }
kern_return_t
_S_msg_startup_dosync (mach_port_t process)
{ return EOPNOTSUPP; }
kern_return_t
_S_msg_report_wait (mach_port_t process,
mach_port_t thread,
string_t wait_desc,
int *wait_rpc)
{ return EOPNOTSUPP; }

View File

@ -59,10 +59,16 @@ _hurd_priority_which_map (enum __priority_which which, int who,
/* Get procinfo to check the owner. */
int *oldpi = pi;
mach_msg_type_number_t oldpisize = pisize;
char *tw = 0;
size_t twsz = 0;
if (err = __USEPORT (PROC, __proc_getprocinfo (port, pids[i],
pi_flags,
&pi, &pisize)))
&pi, &pisize,
&tw, &twsz)))
continue;
if (twsz)
/* Gratuitous. */
__vm_deallocate (__mach_task_self (), tw, twsz);
if (pi != oldpi && oldpi != pibuf)
/* Old buffer from last call was not reused; free it. */
__vm_deallocate (__mach_task_self (),

View File

@ -1,26 +0,0 @@
#include <hurd.h>
/* XXX */
#define STUB(fn) error_t fn (mach_port_t port) { return EOPNOTSUPP; }
STUB(_S_get_init_ports)
STUB(_S_set_init_ports)
STUB(_S_get_init_port)
STUB(_S_set_init_port)
STUB(_S_get_init_ints)
STUB(_S_set_init_ints)
STUB(_S_get_init_int)
STUB(_S_set_init_int)
STUB(_S_get_dtable)
STUB(_S_set_dtable)
STUB(_S_get_fd)
STUB(_S_set_fd)
STUB(_S_get_environment)
STUB(_S_set_environment)
STUB(_S_get_env_variable)
STUB(_S_set_env_variable)
STUB(_S_io_select_done)
STUB(_S_startup_dosync)
STUB(_S_dir_changed)
STUB(_S_file_changed)

View File

@ -96,7 +96,7 @@ DEFUN(bind, (fd, addr, len),
err = __socket_create_address (port,
addr->sa_family,
(char *) addr, len,
&aport, 1);
&aport);
if (! err)
{
err = __socket_bind (port, aport);

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1992, 1994 Free Software Foundation, Inc.
/* Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -61,7 +61,7 @@ DEFUN(connect, (fd, addr, len),
err = __socket_create_address (port,
addr->sa_family,
(char *) addr, len,
&aport, 0);
&aport);
if (! err)
{
err = __socket_connect (port, aport);

View File

@ -41,9 +41,14 @@ getpriority (enum __priority_which which, int who)
{
int *oldpi = pi;
unsigned int oldpisize = pisize;
char *tw = 0;
size_t twsz = 0;
onerr = __USEPORT (PROC, __proc_getprocinfo (port, pid,
PI_FETCH_TASKINFO,
&pi, &pisize));
&pi, &pisize,
&tw, &twsz));
if (twsz)
__vm_deallocate (__mach_task_self (), tw, twsz);
if (pi != oldpi && oldpi != pibuf)
/* Old buffer from last call was not reused; free it. */
__vm_deallocate (__mach_task_self (),

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1994 Free Software Foundation, Inc.
/* Copyright (C) 1994, 1995 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -63,7 +63,7 @@ DEFUN(sendto, (fd, buf, n, flags, addr, addr_len),
addr->sa_family,
(char *) addr,
addr_len,
&aport, 1);
&aport);
if (! err)
{
/* Send the data. */