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

Reply via email to