Added language files' new requirements.

Matias Barcenas 2017-08-28 13:59:11 -05:00
parent 6324f2f7f4
commit fee5059b8b
1 changed files with 12 additions and 2 deletions

@ -14,7 +14,8 @@ An attack bundle is just a fancy term for a directory containing an attack scrip
### Attack Bundle Requirements:
* An attack script, and all assets excluding lib, must be within a directory (with optional subdirectories).
* The directory mentioned above must be named after the attack performed by the script.
* The directory must contain an executable script named "attack.sh," containing the attack.
* The bundle must contain an executable script at the root named "attack.sh," containing the attack.
* The bundle must contain a subdirectory at the root named "language" containing language scripts.
## About Attack Scripts
The attack script (attack.sh in the bundle) is the primary script of the bundle. It is the only script in the bundle loaded directly by fluxion and <strong>must meet specific requirements</strong> to function properly.
@ -34,3 +35,12 @@ Additionally, good practice states custom attacks or any of its scripts <strong>
* Once an attack has started and is running in the background, it may signal fluxion to stop the attack by sending it a <strong>SIGABRT</strong> signal (kill -s SIGABRT fluxPIDHere)
<br>
Note that fluxion's PID is always available via the $$ operator.
## About Language Scripts:
Language scripts are required for every language available in fluxion. That means a script must exist in the attack's language directory for every script that exists under `fluxion/language` Additionally, the language scripts must include extra meta information about the attack in the script's language, such as the attack's name in the language.
### Language Script Requirements
* Language scripts must be named after a ISO 639-1 language code, must be executable and have the extension `.sh`
* Language scripts must have a sensible translation for everything feasibly translatable in the attack.
* Language scripts must have a meta section within the first 3 lines of the language script.
* Language scripts must identify the attack natively within the meta section with the label `# native: `
* Language scripts must describe the attack natively within the meta section with the label `# description: `