[Android Software/Hacking General [Developers Only]] amarullz:
It depend on your need... If you only use busybox 1-2 times, you can use resexec - It will directly extract the file into temporary, run it, then delete the temporary, but if you use it many time, you can extract it, then run it many time with exec.

Here manual for exec(s), extract function from unfinished function reference (will be available in 1.50 release.​

ZIP EXTRACT FUNCTIONS

ziptotmp

Descriptions:

Extract file from zip content into AROMA Temporary directory, and automatically chmod it for executable.
​

Sintax:

void ziptotmp(zip_path, destination_name);

​

Parameters:

zip_path - Absolute path to Destination file in zip that will be extracted

destination_name - Extracted target filename

Return Value:

none
​

Examples:

# It will extract "tmp/busybox" into "/tmp/aroma-data/busybox"
ziptotmp("tmp/busybox", "busybox");

# Now we can execute it
exec("/tmp/aroma-data/busybox","ls","-l");

restotmp

Descriptions:

Extract file from zip content in AROMA Resource Directory "META-INF/com/google/android/aroma/" into AROMA Temporary directory, and automatically chmod it for executable.
​

Sintax:

void restotmp(zip_path, destination_name);

​

Parameters:

zip_path - Relative path of file in Zip from AROMA Resource Directory "META-INF/com/google/android/aroma/" that will be extracted

destination_name - Extracted target filename

Return Value:

none
​

Examples:

# It will extract "META-INF/com/google/android/aroma/busybox" into "/tmp/aroma-data/busybox"
restotmp("busybox", "busybox");

# Now we can execute it
exec("/tmp/aroma-data/busybox","ls","-l");

EXEC FUNCTIONS

zipexec

Descriptions:

Extract file from zip into AROMA temporary, chmod it, and execute it.
​

Sintax:

exit_status zipexec(zip_path [, argument1, argument2, ... ]);

​

Parameters:

zip_path - Absolute path of zip content that will be executed

arguments [Optional] - Command line Arguments

Return Value:

Return exit status. "0" for common success status

The output buffer/stdout will be automatically saved into "exec_buffer"
​

Examples:

# It will extract and run "META-INF/com/google/android/aroma/test.sh"
zipexec("META-INF/com/google/android/aroma/test.sh");

# With Arguments
zipexec("META-INF/com/google/android/aroma/test.sh", "argument1", "argument2");

# Get Return Status
if
zipexec("META-INF/com/google/android/aroma/test.sh") == "0"
then
alert(
"Exec Status",
"Shell was executed successfully"
);
endif;

# Get STDOUT
zipexec("META-INF/com/google/android/aroma/test.sh");
alert(
"Exec STDOUT",
getvar("exec_buffer")
);

resexec

Descriptions:

Same as zipexec, but it will extract and run the file from zip relatively from AROMA Resource Directory "META-INF/com/google/android/aroma"
​

Sintax:

exit_status resexec(zip_path [, argument1, argument2, ... ]);

​

Parameters:

zip_path - Relative path of zip content from AROMA Resource Directory "META-INF/com/google/android/aroma/" that will be executed

arguments [Optional] - Command line Arguments

Return Value:

Return exit status. "0" for common success status

The output buffer/stdout will be automatically saved into "exec_buffer"
​

Examples:

# It will extract and run "META-INF/com/google/android/aroma/test.sh"
resexec("test.sh");

# With Arguments
resexec("test.sh", "argument1", "argument2");

# Get Return Status
if
resexec("test.sh") == "0"
then
alert(
"Exec Status",
"Shell was executed successfully"
);
endif;

# Get STDOUT
resexec("test.sh");
alert(
"Exec STDOUT",
getvar("exec_buffer")
);

run_program, exec

Descriptions:

Run executable from filesystem
​

Sintax:

exit_status run_program(path [, argument1, argument2, ... ]);

exit_status exec(path [, argument1, argument2, ... ]);

​

Parameters:

zip_path - Absolute path to executable

arguments [Optional] - Command line Arguments

Return Value:

Return exit status. "0" for common success status

The output buffer/stdout will be automatically saved into "exec_buffer"
​

Examples:

# It will run "ls" command
run_program("/sbin/ls");

# or
exec("/sbin/ls");

# With some Arguments
run_program("/sbin/ls", "-l", "/sdcard");

# Mounting Device
exec("/sbin/mount", "-t", "auto", "/system");

# Get Return Status
if
exec("/sbin/mount", "-t", "auto", "/system") == "0"
then
alert(
"Exec Status",
"Mount was executed successfully"
);
endif;

# Get STDOUT
exec("/sbin/ls", "-l", "/sdcard/*.zip");
alert(
"List of Zip in SDCARD",
getvar("exec_buffer")
);

--------------- NEXT ----------------​

Documentation still unfinished, and the grammar still suck, :D. But someone will helpme to fix it. Also Full Function Reference will available when 1.50 final released.

Thanks man for donation, and offcourse the big banner in your thread was the biggest gift from you....

+ I am bit familiar with you back in WM era... Is it dorimanx I known back then??