101 lines
2.2 KiB
Diff
101 lines
2.2 KiB
Diff
|
--- a/dpid/dpid.c
|
||
|
+++ b/dpid/dpid.c
|
||
|
@@ -41,6 +41,26 @@
|
||
|
volatile sig_atomic_t caught_sigchld = 0;
|
||
|
char *SharedKey = NULL;
|
||
|
|
||
|
+char *srs_name;
|
||
|
+
|
||
|
+/*! dpid's service request socket file descriptor */
|
||
|
+int srs_fd;
|
||
|
+
|
||
|
+/*! Number of available plugins */
|
||
|
+int numdpis;
|
||
|
+
|
||
|
+/*! Number of sockets being watched */
|
||
|
+int numsocks;
|
||
|
+
|
||
|
+/*! State information for each plugin. */
|
||
|
+struct dp *dpi_attr_list;
|
||
|
+
|
||
|
+/*! service served for each plugin */
|
||
|
+Dlist *services_list;
|
||
|
+
|
||
|
+/*! Set of sockets watched for connections */
|
||
|
+fd_set sock_set;
|
||
|
+
|
||
|
/*! Remove dpid_comm_keys file.
|
||
|
* This avoids that dillo instances connect to a stale port after dpid
|
||
|
* has exited (e.g. after a reboot).
|
||
|
--- a/dpid/dpid.h
|
||
|
+++ b/dpid/dpid.h
|
||
|
@@ -25,10 +25,10 @@
|
||
|
|
||
|
/*! \TODO: Should read this from dillorc */
|
||
|
#define SRS_NAME "dpid.srs"
|
||
|
-char *srs_name;
|
||
|
+extern char *srs_name;
|
||
|
|
||
|
/*! dpid's service request socket file descriptor */
|
||
|
-int srs_fd;
|
||
|
+extern int srs_fd;
|
||
|
|
||
|
/*! plugin state information
|
||
|
*/
|
||
|
@@ -49,19 +49,19 @@
|
||
|
};
|
||
|
|
||
|
/*! Number of available plugins */
|
||
|
-int numdpis;
|
||
|
+extern int numdpis;
|
||
|
|
||
|
/*! Number of sockets being watched */
|
||
|
-int numsocks;
|
||
|
+extern int numsocks;
|
||
|
|
||
|
/*! State information for each plugin. */
|
||
|
-struct dp *dpi_attr_list;
|
||
|
+extern struct dp *dpi_attr_list;
|
||
|
|
||
|
/*! service served for each plugin */
|
||
|
-Dlist *services_list;
|
||
|
+extern Dlist *services_list;
|
||
|
|
||
|
/*! Set of sockets watched for connections */
|
||
|
-fd_set sock_set;
|
||
|
+extern fd_set sock_set;
|
||
|
|
||
|
/*! Set to 1 by the SIGCHLD handler dpi_sigchld */
|
||
|
extern volatile sig_atomic_t caught_sigchld;
|
||
|
--- a/dpid/dpid_common.c
|
||
|
+++ b/dpid/dpid_common.c
|
||
|
@@ -14,6 +14,9 @@
|
||
|
#include <unistd.h>
|
||
|
#include "dpid_common.h"
|
||
|
|
||
|
+/*! Error codes for dpid */
|
||
|
+dpi_errno_t dpi_errno;
|
||
|
+
|
||
|
/*
|
||
|
* Send a verbose error message.
|
||
|
*/
|
||
|
--- a/dpid/dpid_common.h
|
||
|
+++ b/dpid/dpid_common.h
|
||
|
@@ -35,12 +35,13 @@
|
||
|
#define CKD_WRITE(fd, msg) ckd_write(fd, msg, __FILE__, __LINE__)
|
||
|
#define CKD_CLOSE(fd) ckd_close(fd, __FILE__, __LINE__)
|
||
|
|
||
|
-
|
||
|
/*! Error codes for dpid */
|
||
|
-enum {
|
||
|
+typedef enum {
|
||
|
no_errors,
|
||
|
dpid_srs_addrinuse /* dpid service request socket address already in use */
|
||
|
-} dpi_errno;
|
||
|
+} dpi_errno_t;
|
||
|
+
|
||
|
+extern dpi_errno_t dpi_errno;
|
||
|
|
||
|
/*! Intended for identifying dillo plugins
|
||
|
* and related files
|