Re: [libvirt] [PATCH 05/33] Expose MTU management APIs

2011-11-08 Thread Stefan Berger

On 11/03/2011 01:30 PM, Daniel P. Berrange wrote:

From: Daniel P. Berrangeberra...@redhat.com

The MTU management APIs are useful to other code inside libvirt,
so should be exposed as non-static APIs.

* src/util/bridge.c, src/util/bridge.h: Expose virNetDevSetMTU,
   virNetDevSetMTUFromDevice  virNetDevGetMTU
---
  src/util/bridge.c |   18 +-
  src/util/bridge.h |8 
  2 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/src/util/bridge.c b/src/util/bridge.c
index 1584052..247ce93 100644
--- a/src/util/bridge.c
+++ b/src/util/bridge.c
@@ -365,7 +365,7 @@ cleanup:
   *
   * Returns the MTU value in case of success, or -1 on failure.
   */
-static int virNetDevGetMTU(const char *ifname)
+int virNetDevGetMTU(const char *ifname)
  {
  int fd = -1;
  int ret = -1;
@@ -398,7 +398,7 @@ cleanup:
   *
   * Returns 0 in case of success, or -1 on failure
   */
-static int virNetDevSetMTU(const char *ifname, int mtu)
+int virNetDevSetMTU(const char *ifname, int mtu)
  {
  int fd = -1;
  int ret = -1;
@@ -424,18 +424,18 @@ cleanup:
  }

  /**
- * brSetInterfaceMtu
- * @brname: name of the bridge interface
+ * virNetDevSetMTUFromDevice:
   * @ifname: name of the interface whose MTU we want to set
+ * @otherifname: name of the interface whose MTU we want to copy
   *
- * Sets the interface mtu to the same MTU of the bridge
+ * Sets the interface mtu to the same MTU as another interface
   *
   * Returns 0 in case of success, or -1 on failure
   */
-static int virNetDevSetMTUFromDevice(const char *brname,
- const char *ifname)
+int virNetDevSetMTUFromDevice(const char *ifname,
+  const char *otherifname)
  {
-int mtu = virNetDevGetMTU(brname);
+int mtu = virNetDevGetMTU(otherifname);

  if (mtu  0)
  return -1;
@@ -543,7 +543,7 @@ int virNetDevTapCreateInBridgePort(const char *brname,
   * to the bridge, because the bridge will have its
   * MTU adjusted automatically when we add the new interface.
   */
-if (virNetDevSetMTUFromDevice(brname, *ifname)  0)
+if (virNetDevSetMTUFromDevice(*ifname, brname)  0)
  goto error;

  if (virNetDevBridgeAddPort(brname, *ifname)  0)
diff --git a/src/util/bridge.h b/src/util/bridge.h
index 2de7259..0cc89c0 100644
--- a/src/util/bridge.h
+++ b/src/util/bridge.h
@@ -112,6 +112,14 @@ int virNetDevTapCreate(char **ifname,
  int virNetDevSetMAC(const char *ifname,
  const unsigned char *macaddr)
  ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK;
+int virNetDevSetMTU(const char *ifname,
+int mtu)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
+int virNetDevSetMTUFromDevice(const char *ifname,
+  const char *otherifname)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK;
+int virNetDevGetMTU(const char *ifname)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;

  # endif /* WITH_BRIDGE */


ACK

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list


[libvirt] [PATCH 05/33] Expose MTU management APIs

2011-11-03 Thread Daniel P. Berrange
From: Daniel P. Berrange berra...@redhat.com

The MTU management APIs are useful to other code inside libvirt,
so should be exposed as non-static APIs.

* src/util/bridge.c, src/util/bridge.h: Expose virNetDevSetMTU,
  virNetDevSetMTUFromDevice  virNetDevGetMTU
---
 src/util/bridge.c |   18 +-
 src/util/bridge.h |8 
 2 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/src/util/bridge.c b/src/util/bridge.c
index 1584052..247ce93 100644
--- a/src/util/bridge.c
+++ b/src/util/bridge.c
@@ -365,7 +365,7 @@ cleanup:
  *
  * Returns the MTU value in case of success, or -1 on failure.
  */
-static int virNetDevGetMTU(const char *ifname)
+int virNetDevGetMTU(const char *ifname)
 {
 int fd = -1;
 int ret = -1;
@@ -398,7 +398,7 @@ cleanup:
  *
  * Returns 0 in case of success, or -1 on failure
  */
-static int virNetDevSetMTU(const char *ifname, int mtu)
+int virNetDevSetMTU(const char *ifname, int mtu)
 {
 int fd = -1;
 int ret = -1;
@@ -424,18 +424,18 @@ cleanup:
 }
 
 /**
- * brSetInterfaceMtu
- * @brname: name of the bridge interface
+ * virNetDevSetMTUFromDevice:
  * @ifname: name of the interface whose MTU we want to set
+ * @otherifname: name of the interface whose MTU we want to copy
  *
- * Sets the interface mtu to the same MTU of the bridge
+ * Sets the interface mtu to the same MTU as another interface
  *
  * Returns 0 in case of success, or -1 on failure
  */
-static int virNetDevSetMTUFromDevice(const char *brname,
- const char *ifname)
+int virNetDevSetMTUFromDevice(const char *ifname,
+  const char *otherifname)
 {
-int mtu = virNetDevGetMTU(brname);
+int mtu = virNetDevGetMTU(otherifname);
 
 if (mtu  0)
 return -1;
@@ -543,7 +543,7 @@ int virNetDevTapCreateInBridgePort(const char *brname,
  * to the bridge, because the bridge will have its
  * MTU adjusted automatically when we add the new interface.
  */
-if (virNetDevSetMTUFromDevice(brname, *ifname)  0)
+if (virNetDevSetMTUFromDevice(*ifname, brname)  0)
 goto error;
 
 if (virNetDevBridgeAddPort(brname, *ifname)  0)
diff --git a/src/util/bridge.h b/src/util/bridge.h
index 2de7259..0cc89c0 100644
--- a/src/util/bridge.h
+++ b/src/util/bridge.h
@@ -112,6 +112,14 @@ int virNetDevTapCreate(char **ifname,
 int virNetDevSetMAC(const char *ifname,
 const unsigned char *macaddr)
 ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK;
+int virNetDevSetMTU(const char *ifname,
+int mtu)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
+int virNetDevSetMTUFromDevice(const char *ifname,
+  const char *otherifname)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) ATTRIBUTE_RETURN_CHECK;
+int virNetDevGetMTU(const char *ifname)
+ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
 
 # endif /* WITH_BRIDGE */
 
-- 
1.7.6.4

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list