Difference between revisions of "Truxton etl set application name"

From truxwiki.com
Jump to navigation Jump to search
(Created page with "This is used to build the command line arguments for the process. Truxton will automatically parse the command line for you but this allows you to programmatically force comma...")
 
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
This is used to build the command line arguments for the process.
+
This gives your ETL a human friendly name.
Truxton will automatically parse the command line for you but this allows you to programmatically force command line options.
 
  
 
=Syntax=
 
=Syntax=
<syntaxhighlight lang="C">
+
<source lang="C">
void truxton_etl_set_application_name( uint64_t etl_handle, char const * name )
+
void truxton_etl_set_application_name( uint64_t etl_handle, char const * name );
</syntaxhighlight>
+
</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 20: Line 18:
  
 
=Sample=
 
=Sample=
 
+
<source lang="C" highlight="11">
<syntaxhighlight lang="C" highlight="13">
 
 
#include <TruxtonCAPI.h>
 
#include <TruxtonCAPI.h>
  
Line 28: Line 25:
 
     char file_id[ 65 ];
 
     char file_id[ 65 ];
 
     char description[ 128 ];
 
     char description[ 128 ];
 
    int exit_loop = 0;
 
  
 
     uint64_t message = 0;
 
     uint64_t message = 0;
Line 38: Line 33:
 
     truxton_etl_set_queue_name( app, "SampleC" );
 
     truxton_etl_set_queue_name( app, "SampleC" );
  
     truxton_etl_set_description( app, "A sample of how to write an ETL");
+
     truxton_etl_set_description( app, "A sample of how to write an ETL" );
     truxton_etl_add_get_description( app, description, sizeof(description));
+
     truxton_etl_get_description( app, description, sizeof(description) );
  
     while( exit_loop == 0 )
+
    // Pause here until we get a message from the "SampleC" message queue
 +
    message = truxton_etl_get_message( app );
 +
 
 +
     while( message != 0 )
 
     {
 
     {
         message = truxton_etl_get_message( app );
+
         // Do something with the message
  
         if ( message != 0 )
+
         memset( file_id, 0x00, sizeof( file_id ) );
         {
+
         truxton_message_get_file_id( message, file_id, sizeof( file_id ) );
            // Do something with the message
 
  
            memset( file_id, 0x00, sizeof( file_id ) );
+
        printf( "Received file id %s\n", 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 );
  
            truxton_message_destroy( message );
+
        // Pause here until we get another message from the "SampleC" message queue
         }
+
         message = truxton_etl_get_message( app );
        else
 
        {
 
            exit_loop = 1;
 
        }
 
 
     }
 
     }
 +
 +
    truxton_etl_destroy( app );
 
}
 
}
</syntaxhighlight>
+
</source>

Latest revision as of 15:18, 19 March 2021

This gives your ETL a human friendly name.

Syntax

void truxton_etl_set_application_name( uint64_t etl_handle, char const * name );

Parameters

etl_handle

The handle created by the truxton_etl_create call.

name

A short human readable string that identifies your exploitation process.

Remarks

If you do not set the queue name, then the application name becomes the queue name by having all letters converted to lower case and spaces removed. An application name of "Sample ETL" would cause the message queue name to be "sampleetl" unless otherwise specified.

Sample

#include <TruxtonCAPI.h>

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

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

    truxton_etl_set_application_name( app, "Sample C ETL" );
    truxton_etl_set_stage_number( app, 42 );
    truxton_etl_set_queue_name( app, "SampleC" );

    truxton_etl_set_description( app, "A sample of how to write an ETL" );
    truxton_etl_get_description( app, description, sizeof(description) );

    // 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 );
}