On Fri, Apr 11, 2014 at 12:25:54PM +0200, Jiri Benc wrote: > This modifies all transports to use a new common address type, struct > address. This address is stored in a ptp_message for all received messages. > > For sending, the "default" address is used with the default sending > functions, transport_send and transport_peer. The default address depends on > the transport; it's supposed to be the multicast address assigned by the > transport specification. > > Later, a new transport_sendto function will be implemented that sends to the > address contained in the passed ptp_message. > > Signed-off-by: Jiri Benc <jb...@redhat.com> > --- > address.h | 38 ++++++++++++++++++++++++ > msg.h | 6 ++++ > raw.c | 56 ++++++++++++++++++++++++----------- > sk.c | 34 ++++++++++++--------- > sk.h | 11 ++++--- > transport.c | 8 +++-- > transport_private.h | 11 +++++-- > udp.c | 70 ++++++++++++++++++++++++++----------------- > udp6.c | 81 > ++++++++++++++++++++++++++++++--------------------- > uds.c | 34 ++++++++++++++------- > util.c | 18 ++++++----- > 11 files changed, 244 insertions(+), 123 deletions(-) > create mode 100644 address.h > > diff --git a/address.h b/address.h > new file mode 100644 > index 000000000000..b7803879f8b2 > --- /dev/null > +++ b/address.h > @@ -0,0 +1,38 @@ > +/** > + * @file address.h > + * @brief Definition of a structure to hold an address. > + * @note Copyright (C) 2014 Red Hat, Inc., Jiri Benc <jb...@redhat.com> > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License along > + * with this program; if not, write to the Free Software Foundation, Inc., > + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. > + */ > +#ifndef HAVE_ADDRESS_H > +#define HAVE_ADDRESS_H > + > +#include <netinet/in.h> > +#include <sys/socket.h> > +#include <sys/un.h> > + > +struct address { > + socklen_t len; > + union { > + struct sockaddr_storage ss; > + struct sockaddr_in sin; > + struct sockaddr_in6 sin6; > + struct sockaddr_un sun; > + struct sockaddr sa;
Can't we use struct sockaddr_storage here? Thanks, Richard ------------------------------------------------------------------------------ Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test & Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees _______________________________________________ Linuxptp-devel mailing list Linuxptp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-devel