Difference between revisions of "Truxton etl send me files"
Jump to navigation
Jump to search
(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...") |
|||
| (One intermediate revision by the same user not shown) | |||
| Line 3: | Line 3: | ||
=Syntax= | =Syntax= | ||
| − | < | + | <source lang="C"> |
| − | void truxton_etl_send_me_files( uint64_t etl_handle, uint16_t file_type, uint32_t count ) | + | void truxton_etl_send_me_files( uint64_t etl_handle, uint16_t file_type, uint32_t count ); |
| − | </ | + | </source> |
=Parameters= | =Parameters= | ||
==<code>etl_handle</code>== | ==<code>etl_handle</code>== | ||
| − | |||
The handle created by the [[truxton_etl_create]] call. | The handle created by the [[truxton_etl_create]] call. | ||
| Line 24: | Line 23: | ||
=Sample= | =Sample= | ||
| − | + | <source lang="C" highlight="15-16"> | |
| − | < | ||
#include <TruxtonCAPI.h> | #include <TruxtonCAPI.h> | ||
| Line 31: | Line 29: | ||
{ | { | ||
char file_id[ 65 ]; | char file_id[ 65 ]; | ||
| − | |||
| − | |||
uint64_t message = 0; | uint64_t message = 0; | ||
| Line 45: | Line 41: | ||
truxton_etl_send_me_files( app, Type_TIFFWithExif, 500 ); | truxton_etl_send_me_files( app, Type_TIFFWithExif, 500 ); | ||
| − | while( | + | // Pause here until we get a message from the "SampleC" message queue |
| + | message = truxton_etl_get_message( app ); | ||
| + | |||
| + | while( message != 0 ) | ||
{ | { | ||
| − | message | + | // 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 ); | |
| − | + | // Pause here until we get another message from the "SampleC" message queue | |
| − | + | message = truxton_etl_get_message( app ); | |
| − | |||
| − | |||
| − | |||
| − | |||
} | } | ||
truxton_etl_destroy( app ); | truxton_etl_destroy( app ); | ||
} | } | ||
| − | </ | + | </source> |
Latest revision as of 04:05, 5 December 2020
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 ];
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 );
// Pause here until we get a message from the "SampleC" message queue
message = truxton_etl_get_message( app );
while( 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 );
// Pause here until we get another message from the "SampleC" message queue
message = truxton_etl_get_message( app );
}
truxton_etl_destroy( app );
}