Fixed SNMP ASN constant defines to not use ! operator
diff --git a/CHANGELOG b/CHANGELOG
index b9f0f98..d0e15f2 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -229,6 +229,9 @@
 
   ++ Bugfixes:
 
+  2010-07-16: Kieran Mansley
+  * msg_in.c: Fixed SNMP ASN constant defines to not use ! operator 
+
   2010-07-10: Simon Goldschmidt
   * ip.c: Fixed bug #30402: CHECKSUM_GEN_IP_INLINE does not add IP options
 
diff --git a/src/include/lwip/snmp_asn1.h b/src/include/lwip/snmp_asn1.h
index b6996ca..605fa3f 100644
--- a/src/include/lwip/snmp_asn1.h
+++ b/src/include/lwip/snmp_asn1.h
@@ -46,12 +46,12 @@
 extern "C" {
 #endif
 
-#define SNMP_ASN1_UNIV   (!0x80 | !0x40)
-#define SNMP_ASN1_APPLIC (!0x80 |  0x40)
-#define SNMP_ASN1_CONTXT ( 0x80 | !0x40)
+#define SNMP_ASN1_UNIV   (0)    /* (!0x80 | !0x40) */
+#define SNMP_ASN1_APPLIC (0x40) /* (!0x80 |  0x40) */
+#define SNMP_ASN1_CONTXT (0x80) /* ( 0x80 | !0x40) */
 
-#define SNMP_ASN1_CONSTR (0x20)
-#define SNMP_ASN1_PRIMIT (!0x20)
+#define SNMP_ASN1_CONSTR (0x20) /* ( 0x20) */
+#define SNMP_ASN1_PRIMIT (0)    /* (!0x20) */
 
 /* universal tags */
 #define SNMP_ASN1_INTEG  2