diff --git a/ChangeLog b/ChangeLog
index b9f3ec85e9..a1a03db28e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Mar 19 15:15:51 CET 2007 Daniel Veillard <veillard@redhat.com>
+
+	* qemud/protocol.h src/internal.h: applied patch from Jim Meyering
+	  removing global variables (using named enum instead).
+
 Mon Mar 19 11:13:58 CET 2007 Daniel Veillard <veillard@redhat.com>
 
 	* src/libvirt.c: patch from Atsushi SAKAI, fixing virsh access
diff --git a/qemud/protocol.h b/qemud/protocol.h
index e736cd707a..8826df750b 100644
--- a/qemud/protocol.h
+++ b/qemud/protocol.h
@@ -29,7 +29,7 @@
 #include <net/if.h> /* for IF_NAMESIZE */
 
 /* List of different packet types which can be sent */
-enum {
+enum qemud_packet_type {
     QEMUD_PKT_FAILURE = 0,
     QEMUD_PKT_GET_VERSION,
     QEMUD_PKT_GET_NODEINFO,
@@ -71,7 +71,7 @@ enum {
     QEMUD_PKT_GET_CAPABILITIES,
 
     QEMUD_PKT_MAX,
-} qemud_packet_type;
+};
 
 
 #define QEMUD_PROTOCOL_VERSION_MAJOR 1
@@ -86,11 +86,11 @@ enum {
 #define QEMUD_MAX_ERROR_LEN 1024
 
 /* Possible guest VM states */
-enum {
+enum qemud_domain_runstate {
     QEMUD_STATE_RUNNING = 1,
     QEMUD_STATE_PAUSED,
     QEMUD_STATE_STOPPED,
-} qemud_domain_runstate;
+};
 
 /* Each packets has at least a fixed size header.
  *
diff --git a/src/internal.h b/src/internal.h
index fae93b2dfc..de1fb00f52 100644
--- a/src/internal.h
+++ b/src/internal.h
@@ -155,10 +155,10 @@ struct _virConnect {
 * a set of special flag values associated to the domain
 */
 
-enum {
+enum virDomainFlags {
     DOMAIN_IS_SHUTDOWN = (1 << 0),  /* the domain is being shutdown */
     DOMAIN_IS_DEFINED  = (1 << 1)   /* the domain is defined not running */
-} virDomainFlags;
+};
 
 /**
 * _virDomain: