| Update of /cvsroot/pywin32/pywin32/win32/src/win32net
In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv18955
Modified Files:
	win32net.h win32netgroup.cpp win32netmisc.cpp 
	win32netmodule.cpp win32netuse.cpp win32netuser.cpp 
Log Message:
Avoid using a TCHAR as the attribute name in a PyNET_STRUCT_ITEM so we
can avoid turning it back to a narrow string to use as a dict key; just
stick with a plain 'char *' and avoid the conversion.
Index: win32net.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32net.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** win32net.h	4 Jun 2008 08:18:55 -0000	1.7
--- win32net.h	3 Feb 2009 04:38:03 -0000	1.8
***************
*** 14,18 ****
  };
  struct PyNET_STRUCT_ITEM {
! 	TCHAR *attrname;
  	NSI_TYPE type;
  	size_t off;
--- 14,18 ----
  };
  struct PyNET_STRUCT_ITEM {
! 	char *attrname;
  	NSI_TYPE type;
  	size_t off;
Index: win32netmisc.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32netmisc.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** win32netmisc.cpp	3 Feb 2009 04:28:18 -0000	1.16
--- win32netmisc.cpp	3 Feb 2009 04:38:03 -0000	1.17
***************
*** 10,14 ****
  #include "stddef.h"
  
! #define SI0_ENTRY(name, t, r) { _T(#name), t, offsetof(SHARE_INFO_0, shi0_##name), r }
  // @object PySHARE_INFO_0|A dictionary holding the infomation in a Win32 SHARE_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM si0[] = {
--- 10,14 ----
  #include "stddef.h"
  
! #define SI0_ENTRY(name, t, r) { #name, t, offsetof(SHARE_INFO_0, shi0_##name), r }
  // @object PySHARE_INFO_0|A dictionary holding the infomation in a Win32 SHARE_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM si0[] = {
***************
*** 17,21 ****
  };
  
! #define SI1_ENTRY(name, t, r) { _T(#name), t, offsetof(SHARE_INFO_1, shi1_##name), r }
  // @object PySHARE_INFO_1|A dictionary holding the infomation in a Win32 SHARE_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM si1[] = {
--- 17,21 ----
  };
  
! #define SI1_ENTRY(name, t, r) { #name, t, offsetof(SHARE_INFO_1, shi1_##name), r }
  // @object PySHARE_INFO_1|A dictionary holding the infomation in a Win32 SHARE_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM si1[] = {
***************
*** 26,30 ****
  };
  
! #define SI2_ENTRY(name, t, r) { _T(#name), t, offsetof(SHARE_INFO_2, shi2_##name), r }
  // @object PySHARE_INFO_2|A dictionary holding the infomation in a Win32 SHARE_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM si2[] = {
--- 26,30 ----
  };
  
! #define SI2_ENTRY(name, t, r) { #name, t, offsetof(SHARE_INFO_2, shi2_##name), r }
  // @object PySHARE_INFO_2|A dictionary holding the infomation in a Win32 SHARE_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM si2[] = {
***************
*** 40,44 ****
  };
  
! #define SI501_ENTRY(name, t, r) { _T(#name), t, offsetof(SHARE_INFO_501, shi501_##name), r }
  // @object PySHARE_INFO_501|A dictionary holding the infomation in a Win32 SHARE_INFO_501 structure.
  static struct PyNET_STRUCT_ITEM si501[] = {
--- 40,44 ----
  };
  
! #define SI501_ENTRY(name, t, r) { #name, t, offsetof(SHARE_INFO_501, shi501_##name), r }
  // @object PySHARE_INFO_501|A dictionary holding the infomation in a Win32 SHARE_INFO_501 structure.
  static struct PyNET_STRUCT_ITEM si501[] = {
***************
*** 50,54 ****
  };
  
! #define SI502_ENTRY(name, t, r) { _T(#name), t, offsetof(SHARE_INFO_502, shi502_##name), r }
  // @object PySHARE_INFO_502|A dictionary holding the infomation in a Win32 SHARE_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM si502[] = {
--- 50,54 ----
  };
  
! #define SI502_ENTRY(name, t, r) { #name, t, offsetof(SHARE_INFO_502, shi502_##name), r }
  // @object PySHARE_INFO_502|A dictionary holding the infomation in a Win32 SHARE_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM si502[] = {
***************
*** 76,80 ****
  };
  
! #define WKI100_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_100, wki100_##name), r }
  // @object PyWKSTA_INFO_100|A dictionary holding the infomation in a Win32 WKSTA_INFO_100 structure.
  static struct PyNET_STRUCT_ITEM wki100[] = {
--- 76,80 ----
  };
  
! #define WKI100_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_100, wki100_##name), r }
  // @object PyWKSTA_INFO_100|A dictionary holding the infomation in a Win32 WKSTA_INFO_100 structure.
  static struct PyNET_STRUCT_ITEM wki100[] = {
***************
*** 87,91 ****
  };
  
! #define WKI101_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_101, wki101_##name), r }
  // @object PyWKSTA_INFO_101|A dictionary holding the infomation in a Win32 WKSTA_INFO_101 structure.
  static struct PyNET_STRUCT_ITEM wki101[] = {
--- 87,91 ----
  };
  
! #define WKI101_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_101, wki101_##name), r }
  // @object PyWKSTA_INFO_101|A dictionary holding the infomation in a Win32 WKSTA_INFO_101 structure.
  static struct PyNET_STRUCT_ITEM wki101[] = {
***************
*** 99,103 ****
  };
   
! #define WKI102_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_102, wki102_##name), r }
  // @object PyWKSTA_INFO_102|A dictionary holding the infomation in a Win32 WKSTA_INFO_102 structure.
  static struct PyNET_STRUCT_ITEM wki102[] = {
--- 99,103 ----
  };
   
! #define WKI102_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_102, wki102_##name), r }
  // @object PyWKSTA_INFO_102|A dictionary holding the infomation in a Win32 WKSTA_INFO_102 structure.
  static struct PyNET_STRUCT_ITEM wki102[] = {
***************
*** 112,116 ****
  };
  
! #define WKI302_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_302, wki302_##name), r }
  // @object PyWKSTA_INFO_302|A dictionary holding the infomation in a Win32 WKSTA_INFO_302 structure.
  static struct PyNET_STRUCT_ITEM wki302[] = {
--- 112,116 ----
  };
  
! #define WKI302_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_302, wki302_##name), r }
  // @object PyWKSTA_INFO_302|A dictionary holding the infomation in a Win32 WKSTA_INFO_302 structure.
  static struct PyNET_STRUCT_ITEM wki302[] = {
***************
*** 143,147 ****
  };
  
! #define WKI402_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_402, wki402_##name), r }
  // @object PyWKSTA_INFO_402|A dictionary holding the infomation in a Win32 WKSTA_INFO_402 structure.
  static struct PyNET_STRUCT_ITEM wki402[] = {
--- 143,147 ----
  };
  
! #define WKI402_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_402, wki402_##name), r }
  // @object PyWKSTA_INFO_402|A dictionary holding the infomation in a Win32 WKSTA_INFO_402 structure.
  static struct PyNET_STRUCT_ITEM wki402[] = {
***************
*** 170,174 ****
  };
  
! #define WKI502_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_INFO_502, wki502_##name), r }
  // @object PyWKSTA_INFO_502|A dictionary holding the infomation in a Win32 WKSTA_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM wki502[] = {
--- 170,174 ----
  };
  
! #define WKI502_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_INFO_502, wki502_##name), r }
  // @object PyWKSTA_INFO_502|A dictionary holding the infomation in a Win32 WKSTA_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM wki502[] = {
***************
*** 230,234 ****
  };
  
! #define WKUI0_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_USER_INFO_0, wkui0_##name), r }
  // @object PyWKSTA_USER_INFO_0|A dictionary holding the infomation in a Win32 WKSTA_USER_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM wkui0[] = {
--- 230,234 ----
  };
  
! #define WKUI0_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_USER_INFO_0, wkui0_##name), r }
  // @object PyWKSTA_USER_INFO_0|A dictionary holding the infomation in a Win32 WKSTA_USER_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM wkui0[] = {
***************
*** 237,241 ****
  };
  
! #define WKUI1_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_USER_INFO_1, wkui1_##name), r }
  // @object PyWKSTA_USER_INFO_1|A dictionary holding the infomation in a Win32 WKSTA_USER_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM wkui1[] = {
--- 237,241 ----
  };
  
! #define WKUI1_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_USER_INFO_1, wkui1_##name), r }
  // @object PyWKSTA_USER_INFO_1|A dictionary holding the infomation in a Win32 WKSTA_USER_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM wkui1[] = {
***************
*** 254,258 ****
  };
  
! #define WKTI0_ENTRY(name, t, r) { _T(#name), t, offsetof(WKSTA_TRANSPORT_INFO_0, wkti0_##name), r }
  // @object PyWKSTA_TRANSPORT_INFO_0|A dictionary holding the infomation in a Win32 WKSTA_TRANSPORT_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM wkti0[] = {
--- 254,258 ----
  };
  
! #define WKTI0_ENTRY(name, t, r) { #name, t, offsetof(WKSTA_TRANSPORT_INFO_0, wkti0_##name), r }
  // @object PyWKSTA_TRANSPORT_INFO_0|A dictionary holding the infomation in a Win32 WKSTA_TRANSPORT_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM wkti0[] = {
***************
*** 482,486 ****
  }
  
! #define SV100_ENTRY(name, t, r) { _T(#name), t, offsetof(SERVER_INFO_100, sv100_##name), r }
  // @object PySERVER_INFO_100|A dictionary holding the information in a Win32 SERVER_INFO_100 structure.
  static struct PyNET_STRUCT_ITEM sv100[] = {
--- 482,486 ----
  }
  
! #define SV100_ENTRY(name, t, r) { #name, t, offsetof(SERVER_INFO_100, sv100_##name), r }
  // @object PySERVER_INFO_100|A dictionary holding the information in a Win32 SERVER_INFO_100 structure.
  static struct PyNET_STRUCT_ITEM sv100[] = {
***************
*** 489,493 ****
  	{NULL}
  };
! #define SV101_ENTRY(name, t, r) { _T(#name), t, offsetof(SERVER_INFO_101, sv101_##name), r }
  // @object PySERVER_INFO_101|A dictionary holding the information in a Win32 SERVER_INFO_101 structure.
  static struct PyNET_STRUCT_ITEM sv101[] = {
--- 489,493 ----
  	{NULL}
  };
! #define SV101_ENTRY(name, t, r) { #name, t, offsetof(SERVER_INFO_101, sv101_##name), r }
  // @object PySERVER_INFO_101|A dictionary holding the information in a Win32 SERVER_INFO_101 structure.
  static struct PyNET_STRUCT_ITEM sv101[] = {
***************
*** 501,505 ****
  };
  
! #define SV102_ENTRY(name, t, r) { _T(#name), t, offsetof(SERVER_INFO_102, sv102_##name), r }
  // @object PySERVER_INFO_102|A dictionary holding the information in a Win32 SERVER_INFO_102 structure.
  static struct PyNET_STRUCT_ITEM sv102[] = {
--- 501,505 ----
  };
  
! #define SV102_ENTRY(name, t, r) { #name, t, offsetof(SERVER_INFO_102, sv102_##name), r }
  // @object PySERVER_INFO_102|A dictionary holding the information in a Win32 SERVER_INFO_102 structure.
  static struct PyNET_STRUCT_ITEM sv102[] = {
***************
*** 519,523 ****
  };
  
! #define SV402_ENTRY(name, t, r) { _T(#name), t, offsetof(SERVER_INFO_402, sv402_##name), r }
  // @object PySERVER_INFO_402|A dictionary holding the information in a Win32 SERVER_INFO_402 structure.
  static struct PyNET_STRUCT_ITEM sv402[] = {
--- 519,523 ----
  };
  
! #define SV402_ENTRY(name, t, r) { #name, t, offsetof(SERVER_INFO_402, sv402_##name), r }
  // @object PySERVER_INFO_402|A dictionary holding the information in a Win32 SERVER_INFO_402 structure.
  static struct PyNET_STRUCT_ITEM sv402[] = {
***************
*** 556,560 ****
  
  
! #define SV403_ENTRY(name, t, r) { _T(#name), t, offsetof(SERVER_INFO_403, sv403_##name), r }
  // @object PySERVER_INFO_403|A dictionary holding the information in a Win32 SERVER_INFO_403 structure.
  static struct PyNET_STRUCT_ITEM sv403[] = {
--- 556,560 ----
  
  
! #define SV403_ENTRY(name, t, r) { #name, t, offsetof(SERVER_INFO_403, sv403_##name), r }
  // @object PySERVER_INFO_403|A dictionary holding the information in a Win32 SERVER_INFO_403 structure.
  static struct PyNET_STRUCT_ITEM sv403[] = {
***************
*** 595,599 ****
  };
  
! #define SV502_ENTRY(name, t) { _T(#name), t, offsetof(SERVER_INFO_502, sv502_##name), 0 }
  // @object PySERVER_INFO_502|A dictionary holding the information in a Win32 SERVER_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM sv502[] = {
--- 595,599 ----
  };
  
! #define SV502_ENTRY(name, t) { #name, t, offsetof(SERVER_INFO_502, sv502_##name), 0 }
  // @object PySERVER_INFO_502|A dictionary holding the information in a Win32 SERVER_INFO_502 structure.
  static struct PyNET_STRUCT_ITEM sv502[] = {
***************
*** 618,622 ****
  };
  
! #define SV503_ENTRY(name, t) { _T(#name), t, offsetof(SERVER_INFO_503, sv503_##name), 0 }
  // @object PySERVER_INFO_503|A dictionary holding the information in a Win32 SERVER_INFO_503 structure.
  static struct PyNET_STRUCT_ITEM sv503[] = {
--- 618,622 ----
  };
  
! #define SV503_ENTRY(name, t) { #name, t, offsetof(SERVER_INFO_503, sv503_##name), 0 }
  // @object PySERVER_INFO_503|A dictionary holding the information in a Win32 SERVER_INFO_503 structure.
  static struct PyNET_STRUCT_ITEM sv503[] = {
Index: win32netmodule.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32netmodule.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** win32netmodule.cpp	3 Jan 2009 06:43:59 -0000	1.28
--- win32netmodule.cpp	3 Feb 2009 04:38:03 -0000	1.29
***************
*** 97,101 ****
  		return FALSE;
  	}
- 	char *szAttrName = NULL;
  	// allocate the structure, and wipe it to zero.
  	BYTE *buf = (BYTE *)malloc(pI->structsize);
--- 97,100 ----
***************
*** 103,113 ****
  	PyNET_STRUCT_ITEM *pItem;
  	for( pItem=pI->entries;pItem->attrname != NULL;pItem++) {
! 		if (szAttrName) {
! 			PyWinObject_FreeString(szAttrName);
! 			szAttrName = NULL;
! 		}
! 		if (!PyWin_WCHAR_AsString(pItem->attrname, -1, &szAttrName))
! 			goto done;
! 		PyObject *subob = PyMapping_GetItemString(ob, szAttrName);
  
  		if (subob==NULL) {
--- 102,106 ----
  	PyNET_STRUCT_ITEM *pItem;
  	for( pItem=pI->entries;pItem->attrname != NULL;pItem++) {
! 		PyObject *subob = PyMapping_GetItemString(ob, pItem->attrname);
  
  		if (subob==NULL) {
***************
*** 115,119 ****
  			// See if it is OK.
  			if (pItem->reqd) {
! 				PyErr_Format(PyExc_ValueError, "The mapping does not have the required attribute '%s'", szAttrName);
  				goto done;
  			}
--- 108,112 ----
  			// See if it is OK.
  			if (pItem->reqd) {
! 				PyErr_Format(PyExc_ValueError, "The mapping does not have the required attribute '%s'", pItem->attrname);
  				goto done;
  			}
***************
*** 130,134 ****
  				case NSI_DWORD:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", szAttrName);
  						Py_DECREF(subob);
  						goto done;
--- 123,127 ----
  				case NSI_DWORD:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", pItem->attrname);
  						Py_DECREF(subob);
  						goto done;
***************
*** 138,142 ****
  				case NSI_LONG:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", szAttrName);
  						Py_DECREF(subob);
  						goto done;
--- 131,135 ----
  				case NSI_LONG:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", pItem->attrname);
  						Py_DECREF(subob);
  						goto done;
***************
*** 146,150 ****
  				case NSI_BOOL:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", szAttrName);
  						Py_DECREF(subob);
  						goto done;
--- 139,143 ----
  				case NSI_BOOL:
  					if (!PyInt_Check(subob)) {
! 						PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be an integer", pItem->attrname);
  						Py_DECREF(subob);
  						goto done;
***************
*** 155,159 ****
  					if (subob != Py_None) {
  						if (!PyString_Check(subob) || PyString_Size(subob)!=21) {
! 							PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be a string of exactly length 21", szAttrName);
  							Py_DECREF(subob);
  							goto done;
--- 148,152 ----
  					if (subob != Py_None) {
  						if (!PyString_Check(subob) || PyString_Size(subob)!=21) {
! 							PyErr_Format(PyExc_TypeError, "The mapping attribute '%s' must be a string of exactly length 21", pItem->attrname);
  							Py_DECREF(subob);
  							goto done;
***************
*** 202,206 ****
  	ok = TRUE;
  done:
- 	if (szAttrName) PyWinObject_FreeString(szAttrName);
  	if (!ok ) {
  		PyObject_FreeNET_STRUCT(pI, buf);
--- 195,198 ----
***************
*** 255,266 ****
  			return NULL;
  		}
! 		char *szAttrName;
! 		if (!PyWin_WCHAR_AsString(pItem->attrname, -1, &szAttrName)) {
! 			Py_DECREF(ret);
! 			return NULL;
! 		}
! 		PyMapping_SetItemString(ret, szAttrName, newObj);
  		Py_DECREF(newObj);
- 		PyWinObject_FreeString(szAttrName);
  	}
  	return ret;
--- 247,252 ----
  			return NULL;
  		}
! 		PyMapping_SetItemString(ret, pItem->attrname, newObj);
  		Py_DECREF(newObj);
  	}
  	return ret;
Index: win32netuse.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32netuse.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** win32netuse.cpp	3 Jan 2009 06:43:59 -0000	1.6
--- win32netuse.cpp	3 Feb 2009 04:38:03 -0000	1.7
***************
*** 10,14 ****
  #include "stddef.h"
  
! #define UI0_ENTRY(name, t, r) { _T(#name), t, offsetof(USE_INFO_0, ui0_##name), r }
  // @object PyUSE_INFO_0|A dictionary holding the infomation in a Win32 USE_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM ui0[] = {
--- 10,14 ----
  #include "stddef.h"
  
! #define UI0_ENTRY(name, t, r) { #name, t, offsetof(USE_INFO_0, ui0_##name), r }
  // @object PyUSE_INFO_0|A dictionary holding the infomation in a Win32 USE_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM ui0[] = {
***************
*** 18,22 ****
  };
  
! #define UI1_ENTRY(name, t, r) { _T(#name), t, offsetof(USE_INFO_1, ui1_##name), r }
  // @object PyUSE_INFO_1|A dictionary holding the infomation in a Win32 USE_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM ui1[] = {
--- 18,22 ----
  };
  
! #define UI1_ENTRY(name, t, r) { #name, t, offsetof(USE_INFO_1, ui1_##name), r }
  // @object PyUSE_INFO_1|A dictionary holding the infomation in a Win32 USE_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM ui1[] = {
***************
*** 31,35 ****
  };
  
! #define UI2_ENTRY(name, t, r) { _T(#name), t, offsetof(USE_INFO_2, ui2_##name), r }
  // @object PyUSE_INFO_2|A dictionary holding the infomation in a Win32 USE_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM ui2[] = {
--- 31,35 ----
  };
  
! #define UI2_ENTRY(name, t, r) { #name, t, offsetof(USE_INFO_2, ui2_##name), r }
  // @object PyUSE_INFO_2|A dictionary holding the infomation in a Win32 USE_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM ui2[] = {
***************
*** 46,50 ****
  };
  
! #define UI3_ENTRY(name, t, r) { _T(#name), t, offsetof(USE_INFO_3, ui3_##name), r }
  // @object PyUSE_INFO_3|A dictionary holding the infomation in a Win32 USE_INFO_3 structure.
  static struct PyNET_STRUCT_ITEM ui3[] = {
--- 46,50 ----
  };
  
! #define UI3_ENTRY(name, t, r) { #name, t, offsetof(USE_INFO_3, ui3_##name), r }
  // @object PyUSE_INFO_3|A dictionary holding the infomation in a Win32 USE_INFO_3 structure.
  static struct PyNET_STRUCT_ITEM ui3[] = {
Index: win32netuser.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32netuser.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** win32netuser.cpp	3 Jan 2009 06:43:59 -0000	1.10
--- win32netuser.cpp	3 Feb 2009 04:38:03 -0000	1.11
***************
*** 13,37 ****
  #include "stddef.h"
  
! #define UI0_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_0, usri0_##name), r }
! #define UI1_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1, usri1_##name), r }
! #define UI2_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_2, usri2_##name), r }
! #define UI3_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_3, usri3_##name), r }
! #define UI4_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_4, usri4_##name), r }
! #define UI10_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_10, usri10_##name), r }
! #define UI11_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_11, usri11_##name), r }
! #define UI20_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_20, usri20_##name), r }
! #define UI1003_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1003, usri1003_##name), r }
! #define UI1005_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1005, usri1005_##name), r }
! #define UI1006_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1006, usri1006_##name), r }
! #define UI1007_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1007, usri1007_##name), r }
! #define UI1008_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1008, usri1008_##name), r }
! #define UI1009_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1009, usri1009_##name), r }
! #define UI1010_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1010, usri1010_##name), r }
! #define UI1011_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_INFO_1011, usri1011_##name), r }
  
! #define UMI0_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_MODALS_INFO_0, usrmod0_##name), r }
! #define UMI1_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_MODALS_INFO_1, usrmod1_##name), r }
! #define UMI2_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_MODALS_INFO_2, usrmod2_##name), r }
! #define UMI3_ENTRY(name, t, r) { _T(#name), t, offsetof(USER_MODALS_INFO_3, usrmod3_##name), r }
  
  // @object PyUSER_INFO_0|A dictionary holding the information in a Win32 USER_INFO_0 structure.
--- 13,37 ----
  #include "stddef.h"
  
! #define UI0_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_0, usri0_##name), r }
! #define UI1_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1, usri1_##name), r }
! #define UI2_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_2, usri2_##name), r }
! #define UI3_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_3, usri3_##name), r }
! #define UI4_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_4, usri4_##name), r }
! #define UI10_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_10, usri10_##name), r }
! #define UI11_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_11, usri11_##name), r }
! #define UI20_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_20, usri20_##name), r }
! #define UI1003_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1003, usri1003_##name), r }
! #define UI1005_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1005, usri1005_##name), r }
! #define UI1006_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1006, usri1006_##name), r }
! #define UI1007_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1007, usri1007_##name), r }
! #define UI1008_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1008, usri1008_##name), r }
! #define UI1009_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1009, usri1009_##name), r }
! #define UI1010_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1010, usri1010_##name), r }
! #define UI1011_ENTRY(name, t, r) { #name, t, offsetof(USER_INFO_1011, usri1011_##name), r }
  
! #define UMI0_ENTRY(name, t, r) { #name, t, offsetof(USER_MODALS_INFO_0, usrmod0_##name), r }
! #define UMI1_ENTRY(name, t, r) { #name, t, offsetof(USER_MODALS_INFO_1, usrmod1_##name), r }
! #define UMI2_ENTRY(name, t, r) { #name, t, offsetof(USER_MODALS_INFO_2, usrmod2_##name), r }
! #define UMI3_ENTRY(name, t, r) { #name, t, offsetof(USER_MODALS_INFO_3, usrmod3_##name), r }
  
  // @object PyUSER_INFO_0|A dictionary holding the information in a Win32 USER_INFO_0 structure.
Index: win32netgroup.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32net/win32netgroup.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** win32netgroup.cpp	3 Jan 2009 06:43:59 -0000	1.6
--- win32netgroup.cpp	3 Feb 2009 04:38:03 -0000	1.7
***************
*** 9,17 ****
  #include "stddef.h"
  
! #define GI0_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_INFO_0, grpi0_##name), r }
! #define GI1_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_INFO_1, grpi1_##name), r }
! #define GI2_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_INFO_2, grpi2_##name), r }
! #define GI1002_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_INFO_1002, grpi1002_##name), r }
! #define GI1005_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_INFO_1005, grpi1005_##name), r }
  
  
--- 9,17 ----
  #include "stddef.h"
  
! #define GI0_ENTRY(name, t, r) { #name, t, offsetof(GROUP_INFO_0, grpi0_##name), r }
! #define GI1_ENTRY(name, t, r) { #name, t, offsetof(GROUP_INFO_1, grpi1_##name), r }
! #define GI2_ENTRY(name, t, r) { #name, t, offsetof(GROUP_INFO_2, grpi2_##name), r }
! #define GI1002_ENTRY(name, t, r) { #name, t, offsetof(GROUP_INFO_1002, grpi1002_##name), r }
! #define GI1005_ENTRY(name, t, r) { #name, t, offsetof(GROUP_INFO_1005, grpi1005_##name), r }
  
  
***************
*** 60,66 ****
  };
  
! #define LGI0_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_INFO_0, lgrpi0_##name), r }
! #define LGI1_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_INFO_1, lgrpi1_##name), r }
! #define LGI1002_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_INFO_1002, lgrpi1002_##name), r }
  
  // @object PyLOCALGROUP_INFO_0|A dictionary holding the information in a Win32 LOCALGROUP_INFO_0 structure.
--- 60,66 ----
  };
  
! #define LGI0_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_INFO_0, lgrpi0_##name), r }
! #define LGI1_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_INFO_1, lgrpi1_##name), r }
! #define LGI1002_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_INFO_1002, lgrpi1002_##name), r }
  
  // @object PyLOCALGROUP_INFO_0|A dictionary holding the information in a Win32 LOCALGROUP_INFO_0 structure.
***************
*** 91,95 ****
  };
  
! #define LGMI0_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_MEMBERS_INFO_0, lgrmi0_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_0|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM lgmi0[] = {
--- 91,95 ----
  };
  
! #define LGMI0_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_MEMBERS_INFO_0, lgrmi0_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_0|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM lgmi0[] = {
***************
*** 98,102 ****
  };
  
! #define LGMI1_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_MEMBERS_INFO_1, lgrmi1_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_1|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM lgmi1[] = {
--- 98,102 ----
  };
  
! #define LGMI1_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_MEMBERS_INFO_1, lgrmi1_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_1|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_1 structure.
  static struct PyNET_STRUCT_ITEM lgmi1[] = {
***************
*** 107,111 ****
  };
  
! #define LGMI2_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_MEMBERS_INFO_2, lgrmi2_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_2|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM lgmi2[] = {
--- 107,111 ----
  };
  
! #define LGMI2_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_MEMBERS_INFO_2, lgrmi2_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_2|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_2 structure.
  static struct PyNET_STRUCT_ITEM lgmi2[] = {
***************
*** 116,120 ****
  };
  
! #define LGMI3_ENTRY(name, t, r) { _T(#name), t, offsetof(LOCALGROUP_MEMBERS_INFO_3, lgrmi3_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_3|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_3 structure.
  static struct PyNET_STRUCT_ITEM lgmi3[] = {
--- 116,120 ----
  };
  
! #define LGMI3_ENTRY(name, t, r) { #name, t, offsetof(LOCALGROUP_MEMBERS_INFO_3, lgrmi3_##name), r }
  // @object PyLOCALGROUP_MEMBERS_INFO_3|A dictionary holding the information in a Win32 LOCALGROUP_MEMBERS_INFO_3 structure.
  static struct PyNET_STRUCT_ITEM lgmi3[] = {
***************
*** 132,137 ****
  };
  
! #define GUI0_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_USERS_INFO_0, grui0_##name), r }
! #define GUI1_ENTRY(name, t, r) { _T(#name), t, offsetof(GROUP_USERS_INFO_1, grui1_##name), r }
  // @object PyGROUP_USERS_INFO_0|A dictionary holding the information in a Win32 GROUP_USERS_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM gui0[] = {
--- 132,137 ----
  };
  
! #define GUI0_ENTRY(name, t, r) { #name, t, offsetof(GROUP_USERS_INFO_0, grui0_##name), r }
! #define GUI1_ENTRY(name, t, r) { #name, t, offsetof(GROUP_USERS_INFO_1, grui1_##name), r }
  // @object PyGROUP_USERS_INFO_0|A dictionary holding the information in a Win32 GROUP_USERS_INFO_0 structure.
  static struct PyNET_STRUCT_ITEM gui0[] = {
 |