Truxton etl send me files

From truxwiki.com
Revision as of 09:37, 26 May 2020 by Sam (talk | contribs) (Created page with "This is used during the development of your exploitation program. It will go to Truxton, find the files that meet your criteria and place them into your message queue. =Synta...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is used during the development of your exploitation program. It will go to Truxton, find the files that meet your criteria and place them into your message queue.

Syntax

void truxton_etl_send_me_files( uint64_t etl_handle, uint16_t file_type, uint32_t count )

Parameters

etl_handle

The handle created by the truxton_etl_create call.

file_type

The type of file you want to process.

count

The maximum number of files to put into your message queue.

Remarks

This API is usually used to stress test your program. You can get blasted with lots of files to test edge conditions, memory usage and performance. It will be the most accurate test because files will come into your queue in random order from multiple media.

Sample

#include <TruxtonCAPI.h>

void main( void )
{
    char file_id[ 65 ];

    int exit_loop = 0;

    uint64_t message = 0;
    uint64_t app = truxton_etl_create();

    truxton_etl_set_application_name( app, "Sample C ETL" );
    truxton_etl_set_depot_type_name( app, "custom" );
    truxton_etl_set_queue_name( app, "SampleC" );

    // FOR TESTING PURPOSES ONLY!
    truxton_etl_send_me_files( app, Type_JPEGWithExif, 100 );
    truxton_etl_send_me_files( app, Type_TIFFWithExif, 500 );

    while( exit_loop == 0 )
    {
        message = truxton_etl_get_message( app );

        if ( message != 0 )
        {
            // Do something with the message

            memset( file_id, 0x00, sizeof( file_id ) );
            truxton_message_get_file_id( message, file_id, sizeof( file_id ) );

            printf( "Received file id %s\n", file_id );

            truxton_message_destroy( message );
        }
        else
        {
            exit_loop = 1;
        }
    }

    truxton_etl_destroy( app );
}