On 11/03/2011 01:30 PM, Daniel P. Berrange wrote:
From: "Daniel P. Berrange"<berrange@xxxxxxxxxx> 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@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list