21 #define SECURITY_WIN32 78 #define _SEC_ERR(x) case (x): return #x; 115 ret = pQuerySecurityPackageInfoA( p_package_name, p_pkg_info);
126 sec_fun_table = pInitSecurityInterfaceA();
127 ok(sec_fun_table !=
NULL,
"InitSecurityInterface() returned NULL.\n");
138 trace(
"Running testEnumerateSecurityPackages\n");
140 sec_status = pEnumerateSecurityPackagesA(&num_packages, &pkg_info);
143 "EnumerateSecurityPackages() should return %d, not %08x\n",
146 if (num_packages == 0)
149 ok(num_packages > 0,
"Number of sec packages should be > 0 ,but is %d\n",
151 skip(
"no sec packages to check\n");
155 ok(num_packages > 0,
"Number of sec packages should be > 0 ,but is %d\n",
159 "pkg_info should not be NULL after EnumerateSecurityPackages\n");
161 trace(
"Number of packages: %d\n", num_packages);
162 for(
i = 0;
i < num_packages; ++
i){
163 trace(
"%d: Package \"%s\"\n",
i, pkg_info[
i].
Name);
164 trace(
"Supported flags:\n");
166 if(pkg_info[i].fCapabilities & flag) \ 167 trace("\t" #flag "\n") 194 trace(
"Comment: %s\n", pkg_info[
i].Comment);
198 pFreeContextBuffer(pkg_info);
209 trace(
"Running testQuerySecurityPackageInfo\n");
213 pkg_info = (
void *)0xdeadbeef;
218 "Return value of QuerySecurityPackageInfo() shouldn't be %s\n",
223 ok(pkg_info != (
void *)0xdeadbeef,
"wrong pkg_info address %p\n", pkg_info);
224 ok(pkg_info->
wVersion == 1,
"wVersion always should be 1, but is %d\n", pkg_info->
wVersion);
229 sec_status = pFreeContextBuffer(pkg_info);
231 "Return value of FreeContextBuffer() shouldn't be %s\n",
237 pkg_info = (
void *)0xdeadbeef;
238 sec_status = pQuerySecurityPackageInfoA(
winetest, &pkg_info);
241 "Return value of QuerySecurityPackageInfo() should be %s for a nonexistent package\n",
244 ok(pkg_info == (
void *)0xdeadbeef,
"wrong pkg_info address %p\n", pkg_info);
250 if(pInitSecurityInterfaceA)
252 if(pFreeContextBuffer)
254 if(pEnumerateSecurityPackagesA)
256 if(pQuerySecurityPackageInfoA)
#define SEC_E_SECPKG_NOT_FOUND
#define SEC_E_INTERNAL_ERROR
static PSecPkgInfoA *static SEC_CHAR PLUID
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
static SECURITY_STATUS(SEC_ENTRY *pEnumerateSecurityPackagesA)(PULONG
#define SECPKG_FLAG_RESTRICTED_TOKENS
static void testEnumerateSecurityPackages(void)
#define SEC_E_OUT_OF_SEQUENCE
static PSecPkgInfoA *static SEC_CHAR PTimeStamp
#define SECPKG_FLAG_IMPERSONATION
static PSecurityFunctionTableA(SEC_ENTRY *pInitSecurityInterfaceA)(void)
#define SEC_E_UNSUPPORTED_FUNCTION
#define SECPKG_FLAG_INTEGRITY
static const char * getSecError(SECURITY_STATUS status)
#define SECPKG_FLAG_READONLY_WITH_CHECKSUM
#define SEC_E_LOGON_DENIED
#define sprintf(buf, format,...)
#define SECPKG_FLAG_CLIENT_ONLY
GLenum GLuint GLenum GLsizei const GLchar * buf
#define SEC_E_INSUFFICIENT_MEMORY
static void testInitSecurityInterface(void)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
#define SEC_E_ILLEGAL_MESSAGE
#define SEC_E_TARGET_UNKNOWN
#define SEC_I_CONTINUE_NEEDED
#define SEC_E_CANNOT_INSTALL
#define SEC_E_CANNOT_PACK
#define SECPKG_FLAG_MULTI_REQUIRED
#define SECPKG_FLAG_DATAGRAM
static PSecPkgInfoA *static SEC_CHAR ULONG
#define SECPKG_FLAG_NEGOTIABLE
static PSecPkgInfoA *static SEC_CHAR PCredHandle
int main(int argc, const char *argv[])
#define SEC_E_INVALID_HANDLE
#define SEC_E_QOP_NOT_SUPPORTED
static void testQuerySecurityPackageInfo(void)
#define SECPKG_FLAG_ASCII_BUFFERS
#define SECPKG_FLAG_LOGON
static PSecPkgInfoA *static SEC_CHAR SEC_GET_KEY_FN
#define SEC_E_INVALID_TOKEN
#define SECPKG_FLAG_DELEGATION
#define SECPKG_FLAG_ACCEPT_WIN32_NAME
#define SECPKG_FLAG_NEGOTIABLE2
#define SECPKG_FLAG_FRAGMENT
static void InitFunctionPtrs(void)
#define SECPKG_FLAG_NEGO_EXTENDER
#define SECPKG_FLAG_PRIVACY
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define SECPKG_FLAG_TOKEN_ONLY
#define SECPKG_FLAG_EXTENDED_ERROR
static SEC_CHAR PSecBufferDesc
#define SECPKG_FLAG_APPCONTAINER_PASSTHROUGH
#define SECPKG_FLAG_APPCONTAINER_CHECKS
#define SEC_E_BUFFER_TOO_SMALL
static SECURITY_STATUS setupPackageA(SEC_CHAR *p_package_name, PSecPkgInfoA *p_pkg_info)
#define GetProcAddress(x, y)
#define SEC_E_NO_CREDENTIALS
#define SEC_E_NO_IMPERSONATION
#define SECPKG_FLAG_CONNECTION
#define SECPKG_FLAG_MUTUAL_AUTH
static PSecPkgInfoA *static SEC_CHAR PVOID
#define SECPKG_FLAG_GSS_COMPATIBLE
static QUERY_CONTEXT_ATTRIBUTES_FN_A pQueryContextAttributesA
#define SECPKG_FLAG_STREAM