/*
* virbuffer.c: buffers for libvirt
*
- * Copyright (C) 2005-2008, 2010-2012 Red Hat, Inc.
+ * Copyright (C) 2005-2008, 2010-2013 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* Return the current auto-indent value, or -1 if there has been an error.
*/
int
-virBufferGetIndent(const virBufferPtr buf, bool dynamic)
+virBufferGetIndent(const virBuffer *buf, bool dynamic)
{
if (!buf || buf->error)
return -1;
* Return positive errno value or -1 on usage error, 0 if normal
*/
int
-virBufferError(const virBufferPtr buf)
+virBufferError(const virBuffer *buf)
{
if (buf == NULL)
return -1;
* Return the string usage in bytes
*/
unsigned int
-virBufferUse(const virBufferPtr buf)
+virBufferUse(const virBuffer *buf)
{
if (buf == NULL)
return 0;
/*
* virbuffer.h: buffers for libvirt
*
- * Copyright (C) 2005-2008, 2011, 2012 Red Hat, Inc.
+ * Copyright (C) 2005-2008, 2011-2013 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
const char *virBufferCurrentContent(virBufferPtr buf);
char *virBufferContentAndReset(virBufferPtr buf);
void virBufferFreeAndReset(virBufferPtr buf);
-int virBufferError(const virBufferPtr buf);
-unsigned int virBufferUse(const virBufferPtr buf);
+int virBufferError(const virBuffer *buf);
+unsigned int virBufferUse(const virBuffer *buf);
void virBufferAdd(virBufferPtr buf, const char *str, int len);
void virBufferAddChar(virBufferPtr buf, char c);
void virBufferAsprintf(virBufferPtr buf, const char *format, ...)
virBufferAdd(buf_, "" literal_string_ "", sizeof(literal_string_) - 1)
void virBufferAdjustIndent(virBufferPtr buf, int indent);
-int virBufferGetIndent(const virBufferPtr buf, bool dynamic);
+int virBufferGetIndent(const virBuffer *buf, bool dynamic);
void virBufferTrim(virBufferPtr buf, const char *trim, int len);
int
ebtablesAddForwardAllowIn(ebtablesContext *ctx,
const char *iface,
- const virMacAddrPtr mac)
+ const virMacAddr *mac)
{
char macaddr[VIR_MAC_STRING_BUFLEN];
int
ebtablesRemoveForwardAllowIn(ebtablesContext *ctx,
const char *iface,
- const virMacAddrPtr mac)
+ const virMacAddr *mac)
{
char macaddr[VIR_MAC_STRING_BUFLEN];
/*
* virebtables.c: Helper APIs for managing ebtables
*
+ * Copyright (C) 2007-2008, 2013 Red Hat, Inc.
* Copyright (C) 2009 IBM Corp.
- * Copyright (C) 2007, 2008 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
int ebtablesAddForwardAllowIn (ebtablesContext *ctx,
const char *iface,
- const virMacAddrPtr mac);
+ const virMacAddr *mac);
int ebtablesRemoveForwardAllowIn (ebtablesContext *ctx,
const char *iface,
- const virMacAddrPtr mac);
+ const virMacAddr *mac);
int ebtablesAddForwardPolicyReject(ebtablesContext *ctx);
/*
* virmacaddr.c: MAC address handling
*
- * Copyright (C) 2006-2012 Red Hat, Inc.
+ * Copyright (C) 2006-2013 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* > 0 if mac1 > mac2
*/
int
-virMacAddrCmp(const virMacAddrPtr mac1, const virMacAddrPtr mac2)
+virMacAddrCmp(const virMacAddr *mac1, const virMacAddr *mac2)
{
return memcmp(mac1->addr, mac2->addr, VIR_MAC_BUFLEN);
}
* > 0 if mac1 > mac2
*/
int
-virMacAddrCmpRaw(const virMacAddrPtr mac1,
+virMacAddrCmpRaw(const virMacAddr *mac1,
const unsigned char mac2[VIR_MAC_BUFLEN])
{
return memcmp(mac1->addr, mac2, VIR_MAC_BUFLEN);
* Copy src to dst
*/
void
-virMacAddrSet(virMacAddrPtr dst, const virMacAddrPtr src)
+virMacAddrSet(virMacAddrPtr dst, const virMacAddr *src)
{
memcpy(dst, src, sizeof(*src));
}
* Copies the MAC address into raw memory
*/
void
-virMacAddrGetRaw(virMacAddrPtr src, unsigned char dst[VIR_MAC_BUFLEN])
+virMacAddrGetRaw(const virMacAddr *src, unsigned char dst[VIR_MAC_BUFLEN])
{
memcpy(dst, src->addr, VIR_MAC_BUFLEN);
}
* Returns a pointer to the resulting character string.
*/
const char *
-virMacAddrFormat(const virMacAddrPtr addr,
+virMacAddrFormat(const virMacAddr *addr,
char *str)
{
snprintf(str, VIR_MAC_STRING_BUFLEN,
/* The low order bit of the first byte is the "multicast" bit. */
bool
-virMacAddrIsMulticast(const virMacAddrPtr mac)
+virMacAddrIsMulticast(const virMacAddr *mac)
{
return !!(mac->addr[0] & 1);
}
bool
-virMacAddrIsUnicast(const virMacAddrPtr mac)
+virMacAddrIsUnicast(const virMacAddr *mac)
{
return !(mac->addr[0] & 1);
}
/*
* virmacaddr.h: MAC address handling
*
- * Copyright (C) 2006-2012 Red Hat, Inc.
+ * Copyright (C) 2006-2013 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
};
int virMacAddrCompare(const char *mac1, const char *mac2);
-int virMacAddrCmp(const virMacAddrPtr mac1, const virMacAddrPtr mac2);
-int virMacAddrCmpRaw(const virMacAddrPtr mac1,
+int virMacAddrCmp(const virMacAddr *mac1, const virMacAddr *mac2);
+int virMacAddrCmpRaw(const virMacAddr *mac1,
const unsigned char s[VIR_MAC_BUFLEN]);
-void virMacAddrSet(virMacAddrPtr dst, const virMacAddrPtr src);
+void virMacAddrSet(virMacAddrPtr dst, const virMacAddr *src);
void virMacAddrSetRaw(virMacAddrPtr dst, const unsigned char s[VIR_MAC_BUFLEN]);
-void virMacAddrGetRaw(virMacAddrPtr src, unsigned char dst[VIR_MAC_BUFLEN]);
-const char *virMacAddrFormat(const virMacAddrPtr addr,
+void virMacAddrGetRaw(const virMacAddr *src, unsigned char dst[VIR_MAC_BUFLEN]);
+const char *virMacAddrFormat(const virMacAddr *addr,
char *str);
void virMacAddrGenerate(const unsigned char prefix[VIR_MAC_PREFIX_BUFLEN],
virMacAddrPtr addr);
int virMacAddrParse(const char* str,
virMacAddrPtr addr) ATTRIBUTE_RETURN_CHECK;
-bool virMacAddrIsUnicast(const virMacAddrPtr addr);
-bool virMacAddrIsMulticast(const virMacAddrPtr addr);
+bool virMacAddrIsUnicast(const virMacAddr *addr);
+bool virMacAddrIsMulticast(const virMacAddr *addr);
bool virMacAddrIsBroadcastRaw(const unsigned char s[VIR_MAC_BUFLEN]);
#endif /* __VIR_MACADDR_H__ */
typedef unsigned short virSocketAddrIPv6[8];
typedef virSocketAddrIPv6 *virSocketAddrIPv6Ptr;
-static int virSocketAddrGetIPv4Addr(virSocketAddrPtr addr, virSocketAddrIPv4Ptr tab) {
+static int
+virSocketAddrGetIPv4Addr(const virSocketAddr *addr,
+ virSocketAddrIPv4Ptr tab)
+{
unsigned long val;
size_t i;
- if ((addr == NULL) || (tab == NULL) || (addr->data.stor.ss_family != AF_INET))
+ if (!addr || !tab || addr->data.stor.ss_family != AF_INET)
return -1;
val = ntohl(addr->data.inet4.sin_addr.s_addr);
return 0;
}
-static int virSocketAddrGetIPv6Addr(virSocketAddrPtr addr, virSocketAddrIPv6Ptr tab) {
+static int
+virSocketAddrGetIPv6Addr(const virSocketAddr *addr, virSocketAddrIPv6Ptr tab)
+{
size_t i;
- if ((addr == NULL) || (tab == NULL) || (addr->data.stor.ss_family != AF_INET6))
+ if (!addr || !tab || addr->data.stor.ss_family != AF_INET6)
return -1;
for (i = 0; i < 8; i++) {
* if their IP addresses and ports are equal.
*/
bool
-virSocketAddrEqual(const virSocketAddrPtr s1, const virSocketAddrPtr s2)
+virSocketAddrEqual(const virSocketAddr *s1, const virSocketAddr *s2)
{
if (s1->data.stor.ss_family != s2->data.stor.ss_family)
return false;
* See RFC1918, RFC3484, and RFC4193 for details.
*/
bool
-virSocketAddrIsPrivate(const virSocketAddrPtr addr)
+virSocketAddrIsPrivate(const virSocketAddr *addr)
{
unsigned long val;
* Check if passed address is a variant of ANYCAST address.
*/
bool
-virSocketAddrIsWildcard(const virSocketAddrPtr addr)
+virSocketAddrIsWildcard(const virSocketAddr *addr)
{
struct in_addr tmp = { .s_addr = INADDR_ANY };
switch (addr->data.stor.ss_family) {
* Caller must free the returned string
*/
char *
-virSocketAddrFormat(virSocketAddrPtr addr) {
+virSocketAddrFormat(const virSocketAddr *addr)
+{
return virSocketAddrFormatFull(addr, false, NULL);
}
* Caller must free the returned string
*/
char *
-virSocketAddrFormatFull(virSocketAddrPtr addr,
+virSocketAddrFormatFull(const virSocketAddr *addr,
bool withService,
const char *separator)
{
* Returns 0 in case of success, or -1 on error.
*/
int
-virSocketAddrMask(const virSocketAddrPtr addr,
- const virSocketAddrPtr netmask,
- virSocketAddrPtr network)
+virSocketAddrMask(const virSocketAddr *addr,
+ const virSocketAddr *netmask,
+ virSocketAddrPtr network)
{
if (addr->data.stor.ss_family != netmask->data.stor.ss_family) {
network->data.stor.ss_family = AF_UNSPEC;
* Returns 0 in case of success, or -1 on error.
*/
int
-virSocketAddrMaskByPrefix(const virSocketAddrPtr addr,
- unsigned int prefix,
- virSocketAddrPtr network)
+virSocketAddrMaskByPrefix(const virSocketAddr *addr,
+ unsigned int prefix,
+ virSocketAddrPtr network)
{
virSocketAddr netmask;
* Returns 0 in case of success, or -1 on error.
*/
int
-virSocketAddrBroadcast(const virSocketAddrPtr addr,
- const virSocketAddrPtr netmask,
- virSocketAddrPtr broadcast)
+virSocketAddrBroadcast(const virSocketAddr *addr,
+ const virSocketAddr *netmask,
+ virSocketAddrPtr broadcast)
{
if ((addr->data.stor.ss_family != AF_INET) ||
(netmask->data.stor.ss_family != AF_INET)) {
* Returns 0 in case of success, or -1 on error.
*/
int
-virSocketAddrBroadcastByPrefix(const virSocketAddrPtr addr,
- unsigned int prefix,
- virSocketAddrPtr broadcast)
+virSocketAddrBroadcastByPrefix(const virSocketAddr *addr,
+ unsigned int prefix,
+ virSocketAddrPtr broadcast)
{
virSocketAddr netmask;
* Returns the number of bits in the netmask or -1 if an error occurred
* or the netmask is invalid.
*/
-int virSocketAddrGetNumNetmaskBits(const virSocketAddrPtr netmask)
+int virSocketAddrGetNumNetmaskBits(const virSocketAddr *netmask)
{
size_t i, j;
int c = 0;
*/
int
-virSocketAddrGetIpPrefix(const virSocketAddrPtr address,
- const virSocketAddrPtr netmask,
+virSocketAddrGetIpPrefix(const virSocketAddr *address,
+ const virSocketAddr *netmask,
int prefix)
{
if (prefix > 0) {
/*
- * Copyright (C) 2009-2012 Red Hat, Inc.
+ * Copyright (C) 2009-2013 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
int virSocketAddrParseIPv6(virSocketAddrPtr addr,
const char *val);
-void virSocketAddrSetIPv4Addr(const virSocketAddrPtr s, uint32_t addr);
+void virSocketAddrSetIPv4Addr(virSocketAddrPtr s, uint32_t addr);
-char * virSocketAddrFormat(virSocketAddrPtr addr);
-char * virSocketAddrFormatFull(virSocketAddrPtr addr,
- bool withService,
- const char *separator);
+char *virSocketAddrFormat(const virSocketAddr *addr);
+char *virSocketAddrFormatFull(const virSocketAddr *addr,
+ bool withService,
+ const char *separator);
int virSocketAddrSetPort(virSocketAddrPtr addr, int port);
int virSocketAddrCheckNetmask(virSocketAddrPtr addr1,
virSocketAddrPtr addr2,
virSocketAddrPtr netmask);
-int virSocketAddrMask(const virSocketAddrPtr addr,
- const virSocketAddrPtr netmask,
- virSocketAddrPtr network);
-int virSocketAddrMaskByPrefix(const virSocketAddrPtr addr,
- unsigned int prefix,
- virSocketAddrPtr network);
-int virSocketAddrBroadcast(const virSocketAddrPtr addr,
- const virSocketAddrPtr netmask,
- virSocketAddrPtr broadcast);
-int virSocketAddrBroadcastByPrefix(const virSocketAddrPtr addr,
- unsigned int prefix,
- virSocketAddrPtr broadcast);
-
-int virSocketAddrGetNumNetmaskBits(const virSocketAddrPtr netmask);
+int virSocketAddrMask(const virSocketAddr *addr,
+ const virSocketAddr *netmask,
+ virSocketAddrPtr network);
+int virSocketAddrMaskByPrefix(const virSocketAddr *addr,
+ unsigned int prefix,
+ virSocketAddrPtr network);
+int virSocketAddrBroadcast(const virSocketAddr *addr,
+ const virSocketAddr *netmask,
+ virSocketAddrPtr broadcast);
+int virSocketAddrBroadcastByPrefix(const virSocketAddr *addr,
+ unsigned int prefix,
+ virSocketAddrPtr broadcast);
+
+int virSocketAddrGetNumNetmaskBits(const virSocketAddr *netmask);
int virSocketAddrPrefixToNetmask(unsigned int prefix,
virSocketAddrPtr netmask,
int family);
-int virSocketAddrGetIpPrefix(const virSocketAddrPtr address,
- const virSocketAddrPtr netmask,
+int virSocketAddrGetIpPrefix(const virSocketAddr *address,
+ const virSocketAddr *netmask,
int prefix);
-bool virSocketAddrEqual(const virSocketAddrPtr s1,
- const virSocketAddrPtr s2);
-bool virSocketAddrIsPrivate(const virSocketAddrPtr addr);
+bool virSocketAddrEqual(const virSocketAddr *s1,
+ const virSocketAddr *s2);
+bool virSocketAddrIsPrivate(const virSocketAddr *addr);
-bool virSocketAddrIsWildcard(const virSocketAddrPtr addr);
+bool virSocketAddrIsWildcard(const virSocketAddr *addr);
bool virSocketAddrIsNumeric(const char *address);
#endif /* __VIR_SOCKETADDR_H__ */