yencer

0.1.1 • Public • Published

Yencer

Yencer encodes and decodes yEnc data

Install

$ npm install yencer

Todo

  • yEnc encoding
  • Multipart support
  • Buffer/String issues

Examples

Get the Yencer class

var Yencer = require('yencer');

Decode a stream

Here I read out a usenet article stored to disk, including headers. Yencer will take care of it.

var fs = require('fs'),
    stream = Yencer.decodeStream();
 
// Stream the article file into the decoder
fs.createReadStream('/tmp/test.ntx').pipe(stream);
 
// Stream the decoder output into a new file
stream.pipe(fs.createWriteStream('/tmp/decoded-file'));

Decode an article

Here I read out a usenet article stored to disk, including headers. Yencer will take care of it.

 
// Get the buffer to the file
var buffer = fs.readFileSync('/tmp/test.ntx');
 
// Decode the buffer, which returns a YencFile object
var result = Yencer.decodeArticle(buffer);
 
// Inspect the object
console.log(result);
 
    // { buffer: <Buffer ff d8 ff 64 ... >, // The thing you want
    //   info:                              // Info from the yEnc headers
    //    { part: 1,
    //      total: '1',
    //      line: 128,
    //      filesize: 315836,
    //      name: '1024x768_1283625878864.jpg',
    //      begin: 1,
    //      end: 315836,
    //      partsize: 315836,
    //      pcrc32: '72182d81' },
    //   ybegin: true,               // If there was a ybegin line
    //   ypart: true,                // If there was a ypart line
    //   yend: true,                 // If there was a yend line
    //   intact: true,               // If the checksums matched
    //   checksum: '72182d81',       // The decoded checksum
    //   index: 315836,              // Last written index
    //   size: 315836 }              // Supposed filesize

Readme

Keywords

Package Sidebar

Install

npm i yencer

Weekly Downloads

1

Version

0.1.1

License

MIT

Last publish

Collaborators

  • skerit