From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>
Subject: [Qemu-devel] [RfC PATCH 1/3] net: macaddr tweaks.
Date: Fri, 25 Sep 2009 21:43:01 +0200 [thread overview]
Message-ID: <1253907783-1231-2-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1253907783-1231-1-git-send-email-kraxel@redhat.com>
Add new type for mac addresses.
Add function which sets the qemu default mac address if it finds the mac
address uninitialized (i.e. all zeros).
---
net.c | 14 ++++++++++++++
net.h | 2 ++
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/net.c b/net.c
index 3fdf1e6..c6eb93c 100644
--- a/net.c
+++ b/net.c
@@ -280,6 +280,20 @@ void qemu_format_nic_info_str(VLANClientState *vc, uint8_t macaddr[6])
macaddr[3], macaddr[4], macaddr[5]);
}
+void qemu_macaddr_default_if_unset(macaddr_t macaddr)
+{
+ macaddr_t zero = { 0,0,0,0,0,0 };
+
+ if (memcmp(macaddr, zero, sizeof(zero)) != 0)
+ return;
+ macaddr[0] = 0x52;
+ macaddr[1] = 0x54;
+ macaddr[2] = 0x00;
+ macaddr[3] = 0x12;
+ macaddr[4] = 0x34;
+ macaddr[5] = 0x56;
+}
+
static char *assign_name(VLANClientState *vc1, const char *model)
{
VLANState *vlan;
diff --git a/net.h b/net.h
index 1479826..50630a1 100644
--- a/net.h
+++ b/net.h
@@ -7,6 +7,7 @@
/* VLANs support */
+typedef uint8_t macaddr_t[6];
typedef struct VLANClientState VLANClientState;
typedef int (NetCanReceive)(VLANClientState *);
@@ -75,6 +76,7 @@ ssize_t qemu_send_packet_async(VLANClientState *vc, const uint8_t *buf,
void qemu_purge_queued_packets(VLANClientState *vc);
void qemu_flush_queued_packets(VLANClientState *vc);
void qemu_format_nic_info_str(VLANClientState *vc, uint8_t macaddr[6]);
+void qemu_macaddr_default_if_unset(macaddr_t macaddr);
void qemu_check_nic_model(NICInfo *nd, const char *model);
void qemu_check_nic_model_list(NICInfo *nd, const char * const *models,
const char *default_model);
--
1.6.2.5
next prev parent reply other threads:[~2009-09-25 19:43 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-25 19:43 [Qemu-devel] [RfC PATCH 0/3] qdev-ify network cards Gerd Hoffmann
2009-09-25 19:43 ` Gerd Hoffmann [this message]
2009-09-28 22:42 ` [Qemu-devel] [RfC PATCH 1/3] net: macaddr tweaks Markus Armbruster
2009-09-29 9:24 ` Gerd Hoffmann
2009-09-30 11:57 ` [Qemu-devel] " Paolo Bonzini
2009-09-30 17:19 ` Blue Swirl
2009-09-25 19:43 ` [Qemu-devel] [RfC PATCH 2/3] qdev: mac addr property fixups Gerd Hoffmann
2009-09-25 19:43 ` [Qemu-devel] [RfC PATCH 3/3] ne2k_isa: qdev-ify Gerd Hoffmann
2009-09-28 22:50 ` [Qemu-devel] [RfC PATCH 0/3] qdev-ify network cards Markus Armbruster
2009-09-30 7:20 ` Mark McLoughlin
2009-09-30 9:07 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1253907783-1231-2-git-send-email-kraxel@redhat.com \
--to=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).