/*
- * $Source$
- * $Header$
+ * $Source$
+ * $Header$
*/
#ifndef lint
#endif lint
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/************************************************************************/
-/*
-/* gdb_serv.c
-/*
-/* GDB - Routines to implement the server/client model
-/* of connections.
-/*
-/* Author: Noah Mendelsohn
-/* Copyright: 1986 MIT Project Athena
-/* For copying and distribution information, please see
-/* the file <mit-copyright.h>.
-/*
-/************************************************************************/
+/************************************************************************
+ *
+ * gdb_serv.c
+ *
+ * GDB - Routines to implement the server/client model
+ * of connections.
+ *
+ * Author: Noah Mendelsohn
+ * Copyright: 1986 MIT Project Athena
+ * For copying and distribution information, please see
+ * the file <mit-copyright.h>.
+ *
+ ************************************************************************/
#include <mit-copyright.h>
#include <stdio.h>
#include <strings.h>
#include "gdb.h"
#include <sys/ioctl.h>
+#ifdef SOLARIS
+#include <sys/filio.h>
+#endif
- /*----------------------------------------------------------*/
- /*
- /* The following field names and types describe the
- /* tuple sent from clients to servers during negotiation.
- /*
- /*----------------------------------------------------------*/
+ /*----------------------------------------------------------
+ *
+ * The following field names and types describe the
+ * tuple sent from clients to servers during negotiation.
+ *
+ *----------------------------------------------------------*/
char *g_tsv_field_names[] = {"server_id",
"parms",
#define FSV_SERVER_ID 1
#define FSV_PARMS 2
-\f
+
/************************************************************************/
/*
/* gdb_i_srv
gdb_socklen = sizeof(gdb_sockaddr_of_client);
}
-\f
+
/************************************************************************/
/*
/* start_server_connection (start_server_connection)
return NULL;
}
}
-\f
+
/************************************************************************/
/*
/* g_try_server
return;
}
-\f
+
/************************************************************************/
/*
/* g_ask_server
(void) strcpy(STRING_DATA(*((STRING *)FIELD_FROM_TUPLE(out_tuple,0))),
server_id);
+ if (parms == NULL) parms = "";
(void) string_alloc((STRING *)FIELD_FROM_TUPLE(out_tuple, TSV_PARMS),
strlen(parms)+1);
(void) strcpy(STRING_DATA(*((STRING *)FIELD_FROM_TUPLE(out_tuple,1))),
/* CON_STOPPING with errno */
}
}
-\f
+
+
/************************************************************************/
/*
/* start_replying_to_client
/*
/*----------------------------------------------------------*/
+/*ARGSUSED*/
int
g_irtc(op, hcon, arg)
OPERATION op;