The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Parse::Flash::Cookie - A flash cookie parser.

SYNOPSIS

  use Parse::Flash::Cookie;
  my @content = Parse::Flash::Cookie::to_text("settings.sol");
  print join("\n", @content);

  my $xml = Parse::Flash::Cookie::to_xml("settings.sol");
  print $xml;

DESCRIPTION

Local Shared Object (LSO), sometimes known as flash cookies, is a cookie-like data entity used by Adobe Flash Player. LSOs are stored as files on the local file system with the .sol extension. This module reads a Local Shared Object file and return content as a list.

FUNCTIONS

to_text

Parses file and return contents as a textual list.

to_xml

Parses file and return contents as a scalar containing XML representing the file's content.

SOL DATA FORMAT

The SOL files use a binary encoding that is little-endian regardless of platform architecture. This means the SOL files are platform independent, but they have to be interpreted differently on little-endian and big-endian platforms. See perlport for more.

It consists of a header and any number of elements. Both header and the elements have variable lengths.

The header has the following structure:

  • 6 bytes (discarded)

  • 4 bytes that should contain the string 'TSCO'

  • 7 bytes (discarded)

  • 1 byte that signifies the length of name (X bytes)

  • X bytes name

  • 4 bytes (discarded)

Element

Each element has the following structure:

  • 2 bytes length of element name (Y bytes)

  • Y bytes element name

  • 1 byte data type

  • Z bytes data (depending on the data type)

  • 1 byte trailer

TODO

Pointer

Resolve the value of object being pointed at for datatype pointer (instead of index).

BUGS

Please report any bugs or feature requests to bug-parse-flash-cookie at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Parse-Flash-Cookie. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

  perldoc Parse::Flash::Cookie

You can also look for information at:

SEE ALSO

perlport

Local Shared Object

http://en.wikipedia.org/wiki/Local_Shared_Object

Flash coders Wiki doc on .Sol File Format

http://sourceforge.net/docman/?group_id=131628

ALTERNATIVE IMPLEMENTATIONS

http://objection.mozdev.org/ (Firefox extension, Javascript, by Trevor Hobson)

http://www.sephiroth.it/python/solreader.php (PHP, by Alessandro Crugnola)

http://osflash.org/s2x (Python, by Aral Balkan)

COPYRIGHT & LICENSE

Copyright 2007 Andreas Faafeng, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.