Пример #1
0
int
main(/*@unused@*/ int argc, /*@unused@*/ char **argv)
{
	(void)argc;
	(void)argv;

    printf ("#include <sys/types.h>\n"
            "#include <time.h>\n"
            "#include <stddef.h>\n\n"
            "#include \"PCSC/pcsclite.h\"\n"
            "#include \"pcscd.h\"\n"
            "#include \"readerfactory.h\"\n"
            "#include \"eventhandler.h\"\n"
            "#include \"winscard_msg.h\"\n\n"
            "#include \"lassert.h\"\n\n"
            "int pcsc_assert_wire_constants(void);\n"
            "int pcsc_assert_wire_constants(void)\n"
            "{\n");

    BLANK_LINE ();

    check_constants ();
    check_types ();

    BLANK_LINE ();

    printf ("return 0;\n");
    printf ("}\n");

    return 0;
}
Пример #2
0
void
check_lnet_hdr (void)
{
        CHECK_STRUCT (lnet_hdr_t);
        CHECK_MEMBER (lnet_hdr_t, dest_nid);
        CHECK_MEMBER (lnet_hdr_t, src_nid);
        CHECK_MEMBER (lnet_hdr_t, dest_pid);
        CHECK_MEMBER (lnet_hdr_t, src_pid);
        CHECK_MEMBER (lnet_hdr_t, type);
        CHECK_MEMBER (lnet_hdr_t, payload_length);
        CHECK_MEMBER (lnet_hdr_t, msg);

        BLANK_LINE ();
        COMMENT ("Ack");
        CHECK_MEMBER (lnet_hdr_t, msg.ack.dst_wmd);
        CHECK_MEMBER (lnet_hdr_t, msg.ack.match_bits);
        CHECK_MEMBER (lnet_hdr_t, msg.ack.mlength);

        BLANK_LINE ();
        COMMENT ("Put");
        CHECK_MEMBER (lnet_hdr_t, msg.put.ack_wmd);
        CHECK_MEMBER (lnet_hdr_t, msg.put.match_bits);
        CHECK_MEMBER (lnet_hdr_t, msg.put.hdr_data);
        CHECK_MEMBER (lnet_hdr_t, msg.put.ptl_index);
        CHECK_MEMBER (lnet_hdr_t, msg.put.offset);

        BLANK_LINE ();
        COMMENT ("Get");
        CHECK_MEMBER (lnet_hdr_t, msg.get.return_wmd);
        CHECK_MEMBER (lnet_hdr_t, msg.get.match_bits);
        CHECK_MEMBER (lnet_hdr_t, msg.get.ptl_index);
        CHECK_MEMBER (lnet_hdr_t, msg.get.src_offset);
        CHECK_MEMBER (lnet_hdr_t, msg.get.sink_length);

        BLANK_LINE ();
        COMMENT ("Reply");
        CHECK_MEMBER (lnet_hdr_t, msg.reply.dst_wmd);

        BLANK_LINE ();
        COMMENT ("Hello");
        CHECK_MEMBER (lnet_hdr_t, msg.hello.incarnation);
        CHECK_MEMBER (lnet_hdr_t, msg.hello.type);
}
Пример #3
0
static void
check_constants (void)
{
    COMMENT ("Constants...");

    BLANK_LINE ();
    CHECK_DEFINE (PROTOCOL_VERSION_MAJOR);
    CHECK_DEFINE (PROTOCOL_VERSION_MINOR);

    BLANK_LINE ();
    CHECK_DEFINE (MAX_READERNAME);
    CHECK_DEFINE (MAX_ATR_SIZE);
    CHECK_DEFINE (MAX_BUFFER_SIZE);

    BLANK_LINE ();
    COMMENT ("enum pcsc_msg_commands");
    CHECK_VALUE (SCARD_ESTABLISH_CONTEXT);
    CHECK_VALUE (SCARD_RELEASE_CONTEXT);
    CHECK_VALUE (SCARD_LIST_READERS);
    CHECK_VALUE (SCARD_CONNECT);
    CHECK_VALUE (SCARD_RECONNECT);
    CHECK_VALUE (SCARD_DISCONNECT);
    CHECK_VALUE (SCARD_BEGIN_TRANSACTION);
    CHECK_VALUE (SCARD_END_TRANSACTION);
    CHECK_VALUE (SCARD_TRANSMIT);
    CHECK_VALUE (SCARD_CONTROL);
    CHECK_VALUE (SCARD_STATUS);
    CHECK_VALUE (SCARD_GET_STATUS_CHANGE);
    CHECK_VALUE (SCARD_CANCEL);
    CHECK_VALUE (SCARD_CANCEL_TRANSACTION);
    CHECK_VALUE (SCARD_GET_ATTRIB);
    CHECK_VALUE (SCARD_SET_ATTRIB);
    CHECK_VALUE (CMD_VERSION);
    CHECK_VALUE (CMD_GET_READERS_STATE);
    CHECK_VALUE (CMD_WAIT_READER_STATE_CHANGE);
    CHECK_VALUE (CMD_STOP_WAITING_READER_STATE_CHANGE);
}
Пример #4
0
int
main (int argc, char **argv)
{
        char unameinfo[256];
        char gccinfo[256];

        system_string("uname -a", unameinfo, sizeof(unameinfo));
        system_string("gcc -v 2>&1 | tail -1", gccinfo, sizeof(gccinfo));

        printf ("void lnet_assert_wire_constants (void)\n"
                "{\n"
                "        /* Wire protocol assertions generated by 'wirecheck'\n"
                "         * running on %s\n"
                "         * with %s */\n"
                "\n", unameinfo, gccinfo);

        BLANK_LINE ();

        COMMENT ("Constants...");

        CHECK_DEFINE (LNET_PROTO_RA_MAGIC);

        CHECK_DEFINE (LNET_PROTO_TCP_MAGIC);
        CHECK_DEFINE (LNET_PROTO_TCP_VERSION_MAJOR);
        CHECK_DEFINE (LNET_PROTO_TCP_VERSION_MINOR);

        CHECK_VALUE (LNET_MSG_ACK);
        CHECK_VALUE (LNET_MSG_PUT);
        CHECK_VALUE (LNET_MSG_GET);
        CHECK_VALUE (LNET_MSG_REPLY);
        CHECK_VALUE (LNET_MSG_HELLO);

        check_lnet_handle_wire ();
        check_lnet_magicversion ();
        check_lnet_hdr ();

        printf ("}\n\n");

        return (0);
}
Пример #5
0
static void
check_types (void)
{
    COMMENT ("Types...");

    BLANK_LINE ();
    CHECK_STRUCT (version_struct);
    CHECK_MEMBER (version_struct, major);
    CHECK_MEMBER (version_struct, minor);
    CHECK_MEMBER (version_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (client_struct);
    CHECK_MEMBER (client_struct, hContext);

    BLANK_LINE ();
    CHECK_STRUCT (establish_struct);
    CHECK_MEMBER (establish_struct, dwScope);
    CHECK_MEMBER (establish_struct, hContext);
    CHECK_MEMBER (establish_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (release_struct);
    CHECK_MEMBER (release_struct, hContext);
    CHECK_MEMBER (release_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (connect_struct);
    CHECK_MEMBER (connect_struct, hContext);
    CHECK_MEMBER (connect_struct, szReader);
    CHECK_MEMBER (connect_struct, dwShareMode);
    CHECK_MEMBER (connect_struct, dwPreferredProtocols);
    CHECK_MEMBER (connect_struct, hCard);
    CHECK_MEMBER (connect_struct, dwActiveProtocol);
    CHECK_MEMBER (connect_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (reconnect_struct);
    CHECK_MEMBER (reconnect_struct, hCard);
    CHECK_MEMBER (reconnect_struct, dwShareMode);
    CHECK_MEMBER (reconnect_struct, dwPreferredProtocols);
    CHECK_MEMBER (reconnect_struct, dwInitialization);
    CHECK_MEMBER (reconnect_struct, dwActiveProtocol);
    CHECK_MEMBER (reconnect_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (disconnect_struct);
    CHECK_MEMBER (disconnect_struct, hCard);
    CHECK_MEMBER (disconnect_struct, dwDisposition);
    CHECK_MEMBER (disconnect_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (begin_struct);
    CHECK_MEMBER (begin_struct, hCard);
    CHECK_MEMBER (begin_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (end_struct);
    CHECK_MEMBER (end_struct, hCard);
    CHECK_MEMBER (end_struct, dwDisposition);
    CHECK_MEMBER (end_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (cancel_struct);
    CHECK_MEMBER (cancel_struct, hContext);
    CHECK_MEMBER (cancel_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (status_struct);
    CHECK_MEMBER (status_struct, hCard);
    CHECK_MEMBER (status_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (transmit_struct);
    CHECK_MEMBER (transmit_struct, hCard);
    CHECK_MEMBER (transmit_struct, ioSendPciProtocol);
    CHECK_MEMBER (transmit_struct, ioSendPciLength);
    CHECK_MEMBER (transmit_struct, cbSendLength);
    CHECK_MEMBER (transmit_struct, ioRecvPciProtocol);
    CHECK_MEMBER (transmit_struct, ioRecvPciLength);
    CHECK_MEMBER (transmit_struct, pcbRecvLength);
    CHECK_MEMBER (transmit_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (control_struct);
    CHECK_MEMBER (control_struct, hCard);
    CHECK_MEMBER (control_struct, dwControlCode);
    CHECK_MEMBER (control_struct, cbSendLength);
    CHECK_MEMBER (control_struct, cbRecvLength);
    CHECK_MEMBER (control_struct, dwBytesReturned);
    CHECK_MEMBER (control_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (getset_struct);
    CHECK_MEMBER (getset_struct, hCard);
    CHECK_MEMBER (getset_struct, dwAttrId);
    CHECK_MEMBER (getset_struct, cbAttrLen);
    CHECK_MEMBER (getset_struct, rv);

    BLANK_LINE ();
    CHECK_STRUCT (pubReaderStatesList);
    CHECK_MEMBER (pubReaderStatesList, readerName);
    CHECK_MEMBER (pubReaderStatesList, readerState);
    CHECK_MEMBER (pubReaderStatesList, readerSharing);
    CHECK_MEMBER (pubReaderStatesList, cardAtr);
    CHECK_MEMBER (pubReaderStatesList, cardAtrLength);
    CHECK_MEMBER (pubReaderStatesList, cardProtocol);
}