comp.lang.ada
 help / color / mirror / Atom feed
* Ada source code obfuscator update
@ 2009-06-30 21:48 okellogg
  0 siblings, 0 replies; 3+ messages in thread
From: okellogg @ 2009-06-30 21:48 UTC (permalink / raw)


Version 0.2 of the obfuscada.pl Ada source code obfuscator script has
been released
and is available at:

http://freenet-homepage.de/okellogg/x.html

The release notes are:

* Fixed syntax error in generated file regexes.txt.
* Added the do_not_mangle list which contains words to be excluded
  from the obfuscation.

Oliver Kellogg



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Ada source code obfuscator update
@ 2012-07-12 19:28 Oliver Kellogg
  2012-07-29 14:57 ` Oliver Kellogg
  0 siblings, 1 reply; 3+ messages in thread
From: Oliver Kellogg @ 2012-07-12 19:28 UTC (permalink / raw)


Version 0.6 of the obfuscada perl script has been released and is available at:

http://www.okellogg.de/x.html

Changes since version 0.2 are:

- Exclude 'I' and 'O' from obfuscated identifiers to avoid confusion with '1' and '0'
- Support bodies and child/separate units
- Various bug fixes
- Use the UniLexer perl module for scanning the input into tokens

Due to the limitations of global text substitution without semantic knowledge, I expect this to be the last update of the script.
A complete rewrite in Ada (using ASIS) is planned.

Enjoy,

Oliver Kellogg



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Ada source code obfuscator update
  2012-07-12 19:28 Oliver Kellogg
@ 2012-07-29 14:57 ` Oliver Kellogg
  0 siblings, 0 replies; 3+ messages in thread
From: Oliver Kellogg @ 2012-07-29 14:57 UTC (permalink / raw)


After the release of version 0.6, a number of bugs were found and fixed so I decided to release version 0.7, see

http://www.okellogg.de/x.html

This version was successfully used on a system consisting of 180,000 lines of Ada code.

Changes wrt version 0.6 are:

- Extend @do_not_mangle and add a note about its incompleteness.
- In sub mangled_name, add the name component onto $result unmangled if no
  mangling was performed on it.
- Rename sub pkg_mname to unit_mname and rename @packages to @units.
- At sub nexttoken, add optional arg $join_compound_name (default: false;
  this is set true on processing unit names.)
- New sub skip_to_first_of permits skipping to any of multiple given tokens;
  skipping ends on encountering the first of the given tokens.
- In main program:
  - fix iteration over @lex by replacing the "for" loop incrementing $lndx
    by a "while" loop employing sub nexttoken
  - fix bug in processing of task and protected declarations (the comparison
    against 'body' was broken)
  - detect keyword "use" so that "use type" is out of the way (otherwise the
    type declaration circuitry is erroneously triggered.)
- In sub wregex, change search pattern to exclude preceding ' (tic) to avoid
  substituting attributes.
- In sub unit_mname and main program, change unit prefix to "U".

-- Oliver




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-07-29 15:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-30 21:48 Ada source code obfuscator update okellogg
  -- strict thread matches above, loose matches on Subject: below --
2012-07-12 19:28 Oliver Kellogg
2012-07-29 14:57 ` Oliver Kellogg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox