On 2/11/2020 6:03 AM, Richard Cochran wrote: > Up until now, the users of the interface data structure simply access > its fields without restriction. This patch takes the first step > towards abstracting this data structure by giving it a file of its > very own. > > Signed-off-by: Richard Cochran <richardcoch...@gmail.com>
Reviewed-by: Jacob Keller <jacob.e.kel...@intel.com> > --- > config.h | 15 +-------------- > interface.h | 28 ++++++++++++++++++++++++++++ > 2 files changed, 29 insertions(+), 14 deletions(-) > create mode 100644 interface.h > > diff --git a/config.h b/config.h > index e27d3e2..14d2f64 100644 > --- a/config.h > +++ b/config.h > @@ -26,25 +26,12 @@ > #include "ds.h" > #include "dm.h" > #include "filter.h" > +#include "interface.h" > #include "mtab.h" > #include "transport.h" > #include "servo.h" > #include "sk.h" > > -#define MAX_IFNAME_SIZE 108 /* = UNIX_PATH_MAX */ > - > -#if (IF_NAMESIZE > MAX_IFNAME_SIZE) > -#error if_namesize larger than expected. > -#endif > - > -/** Defines a network interface, with PTP options. */ > -struct interface { > - STAILQ_ENTRY(interface) list; > - char name[MAX_IFNAME_SIZE + 1]; > - char ts_label[MAX_IFNAME_SIZE + 1]; > - struct sk_ts_info ts_info; > -}; > - Yea this doesn't really belong in config.h at all. > struct config { > /* configured interfaces */ > STAILQ_HEAD(interfaces_head, interface) interfaces; > diff --git a/interface.h b/interface.h > new file mode 100644 > index 0000000..61d53a2 > --- /dev/null > +++ b/interface.h > @@ -0,0 +1,28 @@ > +/** > + * @file interface.h > + * @brief Implements network interface data structures. > + * @note Copyright (C) 2020 Richard Cochran <richardcoch...@gmail.com> > + * @note SPDX-License-Identifier: GPL-2.0+ > + */ > +#ifndef HAVE_INTERFACE_H > +#define HAVE_INTERFACE_H > + > +#include <sys/queue.h> > +#include "sk.h" > + > +#define MAX_IFNAME_SIZE 108 /* = UNIX_PATH_MAX */ > + > +#if (IF_NAMESIZE > MAX_IFNAME_SIZE) > +#error if_namesize larger than expected. > +#endif > + > +/** Defines a network interface, with PTP options. */ > +struct interface { > + STAILQ_ENTRY(interface) list; > + char name[MAX_IFNAME_SIZE + 1]; > + char ts_label[MAX_IFNAME_SIZE + 1]; > + struct sk_ts_info ts_info; > +}; > + > +#endif > + > _______________________________________________ Linuxptp-devel mailing list Linuxptp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-devel