EnumCalendarInfoA stub.

diff --git a/include/winnls.h b/include/winnls.h
index 63b4a53..98af8ec 100644
--- a/include/winnls.h
+++ b/include/winnls.h
@@ -456,6 +456,17 @@
 #define	C3_ALPHA		0x8000
 #define	C3_NOTAPPLICABLE	0x0000
 
+typedef DWORD CALTYPE;
+typedef DWORD CALID;
+
+typedef BOOL (CALLBACK* CALINFO_ENUMPROCA)(LPSTR);
+typedef BOOL (CALLBACK* CALINFO_ENUMPROCW)(LPWSTR);
+DECL_WINELIB_TYPE_AW(CALINFO_ENUMPROC);
+
+BOOL	WINAPI EnumCalendarInfoA(CALINFO_ENUMPROCA lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType);
+BOOL	WINAPI EnumCalendarInfoW(CALINFO_ENUMPROCW lpCalInfoEnumProc,LCID Locale,CALID Calendar,CALTYPE CalType);
+#define EnumCalendarInfo WINELIB_NAME_AW(EnumCalendarInfo)
+
         /* FIXME: This does not belong to an interface file */
 UINT16      WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
 INT16       WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16);
diff --git a/ole/ole2nls.c b/ole/ole2nls.c
index 611551d..19c8050 100644
--- a/ole/ole2nls.c
+++ b/ole/ole2nls.c
@@ -3198,3 +3198,13 @@
   			 timestr, timelen);
 	return ret;
 }
+
+/******************************************************************************
+ *		EnumCalendarInfoA	[KERNEL32.196]
+ */
+BOOL WINAPI EnumCalendarInfoA(
+	CALINFO_ENUMPROCA calinfoproc,LCID locale,CALID calendar,CALTYPE caltype
+) {
+	FIXME(ole,"(%p,0x%04lx,0x%08lx,0x%08lx),stub!\n",calinfoproc,locale,calendar,caltype);
+	return FALSE;
+}
diff --git a/relay32/kernel32.spec b/relay32/kernel32.spec
index 4ed44fb..0dd85ab 100644
--- a/relay32/kernel32.spec
+++ b/relay32/kernel32.spec
@@ -211,7 +211,7 @@
 193 stub EndUpdateResourceA
 194 stub EndUpdateResourceW
 195 stdcall EnterCriticalSection(ptr) EnterCriticalSection
-196 stub EnumCalendarInfoA
+196 stdcall EnumCalendarInfoA(ptr long long long) EnumCalendarInfoA
 197 stub EnumCalendarInfoW
 198 stdcall EnumDateFormatsA(ptr long long) EnumDateFormatsA
 199 stdcall EnumDateFormatsW(ptr long long) EnumDateFormatsW