Clean up and centralize stray external prototypes into headers.

This commit is contained in:
Nicholas J. Kain 2014-03-12 16:24:02 -04:00
parent 2afd963ad0
commit 94a923b00a
6 changed files with 45 additions and 13 deletions

View File

@ -35,6 +35,7 @@
#include <errno.h> #include <errno.h>
#include "options.h" #include "options.h"
#include "ndhc.h"
#include "config.h" #include "config.h"
#include "dhcp.h" #include "dhcp.h"
#include "options.h" #include "options.h"
@ -45,9 +46,6 @@
#include "ifchange.h" #include "ifchange.h"
#include "ifch_proto.h" #include "ifch_proto.h"
// XXX: Move to header
extern int pToIfchW;
static int cfg_deconfig; // Set if the interface has already been deconfigured. static int cfg_deconfig; // Set if the interface has already been deconfigured.
static struct dhcpmsg cfg_packet; // Copy of the current configuration packet. static struct dhcpmsg cfg_packet; // Copy of the current configuration packet.

View File

@ -37,9 +37,6 @@
#include "strl.h" #include "strl.h"
#include "ifset.h" #include "ifset.h"
// XXX: Move to header
extern struct ifchd_client cl;
%%{ %%{
machine ipv4set_parser; machine ipv4set_parser;

View File

@ -46,6 +46,7 @@
#include <getopt.h> #include <getopt.h>
#include "ifchd.h" #include "ifchd.h"
#include "ndhc.h"
#include "log.h" #include "log.h"
#include "chroot.h" #include "chroot.h"
#include "pidfile.h" #include "pidfile.h"
@ -74,12 +75,6 @@ char pidfile_ifch[MAX_PATH_LENGTH] = PID_FILE_IFCH_DEFAULT;
uid_t ifch_uid = 0; uid_t ifch_uid = 0;
gid_t ifch_gid = 0; gid_t ifch_gid = 0;
// XXX: Move to header
extern int pToIfchR;
extern int pToNdhcW;
extern char chroot_dir[MAX_PATH_LENGTH];
extern char resolv_conf_d[MAX_PATH_LENGTH];
static void writeordie(int fd, const char *buf, int len) static void writeordie(int fd, const char *buf, int len)
{ {
if (safe_write(fd, buf, len) == -1) if (safe_write(fd, buf, len) == -1)

View File

@ -29,6 +29,8 @@ struct ifchd_client {
char domains[MAX_BUF]; char domains[MAX_BUF];
}; };
extern struct ifchd_client cl;
extern int allow_hostname; extern int allow_hostname;
extern char pidfile_ifch[MAX_PATH_LENGTH]; extern char pidfile_ifch[MAX_PATH_LENGTH];
extern uid_t ifch_uid; extern uid_t ifch_uid;

View File

@ -1,6 +1,6 @@
/* ndhc.c - DHCP client /* ndhc.c - DHCP client
* *
* Copyright (c) 2004-2013 Nicholas J. Kain <njkain at gmail dot com> * Copyright (c) 2004-2014 Nicholas J. Kain <njkain at gmail dot com>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

40
ndhc/ndhc.h Normal file
View File

@ -0,0 +1,40 @@
/* ndhc.h - DHCP client
*
* Copyright (c) 2014 Nicholas J. Kain <njkain at gmail dot com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* - Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef NJK_NDHC_NDHC_H_
#define NJK_NDHC_NDHC_H_
#include "defines.h"
extern int pToIfchR;
extern int pToIfchW;
extern int pToNdhcR;
extern int pToNdhcW;
extern char chroot_dir[MAX_PATH_LENGTH];
extern char resolv_conf_d[MAX_PATH_LENGTH];
#endif /* NJK_NDHC_NDHC_H_ */