...

Text file src/github.com/miekg/pkcs11/pkcs11go.h

Documentation: github.com/miekg/pkcs11

     1//
     2// Use of this source code is governed by a BSD-style
     3// license that can be found in the LICENSE file.
     4//
     5
     6#define CK_PTR *
     7#ifndef NULL_PTR
     8#define NULL_PTR 0
     9#endif
    10#define CK_DEFINE_FUNCTION(returnType, name) returnType name
    11#define CK_DECLARE_FUNCTION(returnType, name) returnType name
    12#define CK_DECLARE_FUNCTION_POINTER(returnType, name) returnType (* name)
    13#define CK_CALLBACK_FUNCTION(returnType, name) returnType (* name)
    14
    15#include <unistd.h>
    16#ifdef PACKED_STRUCTURES
    17# pragma pack(push, 1)
    18# include "pkcs11.h"
    19# pragma pack(pop)
    20#else
    21# include "pkcs11.h"
    22#endif
    23
    24// Copy of CK_INFO but with default alignment (not packed). Go hides unaligned
    25// struct fields so copying to an aligned struct is necessary to read CK_INFO
    26// from Go on Windows where packing is required.
    27typedef struct ckInfo {
    28	CK_VERSION cryptokiVersion;
    29	CK_UTF8CHAR manufacturerID[32];
    30	CK_FLAGS flags;
    31	CK_UTF8CHAR libraryDescription[32];
    32	CK_VERSION libraryVersion;
    33} ckInfo, *ckInfoPtr;

View as plain text