Security News

Patches

Site Menu
  • Home Page
  • New AO Newsletters
  • New Downloads
  • Fight-Back!
  • Discussion Forums
  • Active Threads RSS
  • Top Links List
  • Security Events
  • Hacker Jargon
  • Site FAQ
  • IP Locator

  • Tutorial Menu
  • Main Index
  • AO Related
  • Hardware
  • IRC
  • Networking
  • Newbie Questions
  • Operating Systems
  • Programming
  • Security
  • Web

  • Downloads Menu
  • Main Index
  • Antivirus
  • Cryptography
  • Firewalls
  • Forensics
  • Honeypots
  • Intrusion Detection
  • Keyboard Loggers
  • Password Generators
  • Port Scanners
  • Spam Blockers
  • Spyware Removers
  • Ob- = O = obi-wan error

    Obfuscated C Contest n.

    (in full, the `International Obfuscated C Code Contest', or IOCCC) An annual contest run since 1984 over Usenet by Landon Curt Noll and friends. The overall winner is whoever produces the most unreadable, creative, and bizarre (but working) C program; various other prizes are awarded at the judges' whim. C's terse syntax and macro-preprocessor facilities give contestants a lot of maneuvering room. The winning programs often manage to be simultaneously (a) funny, (b) breathtaking works of art, and (c) horrible examples of how not to code in C.

    This relatively short and sweet entry might help convey the flavor of obfuscated C:

    /*
     * HELLO WORLD program
     * by Jack Applin and Robert Heckendorn, 1985
     * (Note: depends on being able to modify elements of argv[],
     * which is not guaranteed by ANSI and often not possible.)
     */
    main(v,c)char**c;{for(v[c++]="Hello, world!\n)";
    (!!c)[*c]&&(v--||--c&&execlp(*c,*c,c[!!c]+!!c,!c));
    **c=!c)write(!!*c,*c,!!**c);}
    

    Here's another good one:

    /*
     * Program to compute an approximation of pi
     * by Brian Westley, 1988
     * (requires pcc macro concatenation; try gcc -traditional-cpp)
     */
    
    #define _ -F<00||--F-OO--;
    int F=00,OO=00;
    main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO()
    {
                _-_-_-_
           _-_-_-_-_-_-_-_-_
        _-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_
        _-_-_-_-_-_-_-_-_-_-_-_
            _-_-_-_-_-_-_-_
                _-_-_-_
    }
    

    Note that this program works by computing its own area. For more digits, write a bigger program. See also hello world.

    The IOCCC has an official home page at http://www.ioccc.org.

    Ob- = O = obi-wan error

    All times are GMT +1. The time now is 09:46 PM.



    Powered by vBulletin® Version 3.8.4
    Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.