AOL-TOC

 view release on metacpan or  search on metacpan

SFLAP.pm  view on Meta::CPAN


  $foo = CORE::sysread($fd, $data, $len);
  $self->debug("      data = $data\n");

  $self->callback($chan, $data);

  return $buffer;
}

sub send {
  my ($self, $chan, $data, $length) = @_;
  my $buffer;
  my $format;

  if (!$length) {
    $length = length($data);
  }

  if ($chan == $SFLAP_DATA) {
    $format = "cCnna*C";
    $length ++;
  } else {
    $format = "cCnna*";
  }

  $self->{sequence} ++;
  $buffer = pack($format, 42, $chan, $self->{sequence},
                          $length, $data, 0);

  ($id, $ch, $seq, $len, $data, $nuller) = unpack($format, $buffer);

  $foo = CORE::syswrite($self->{fd}, $buffer, $length + 6);
  $self->debug("sflap send ($self->{fd}) $foo chan = $ch seq = $seq len = $len data = $data\n");
}

sub write {
  my ($self, $buffer, $len, $noflap) = @_;
  my $fd = $self->{fd};

  return CORE::syswrite($fd, $buffer, $len);
}

TOC.pm  view on Meta::CPAN

  my @skey;
  my $rpassword = "0x";
  my $i = 0;

  if (!$key) { $key = $ROASTING_KEY; }

  @skey = split('', $key);

  for $c (split('', $password)) {
    $p = unpack("c", $c);
    $k = unpack("c", @skey[$i % length($key)]);
    $rpassword = sprintf("%s%02x", $rpassword, $p ^ $k);
    $i ++;
  }

  return ($rpassword);
}


sub encode_string {
  my ($self, $str) = @_;

TOC.pm  view on Meta::CPAN



# SFLAP Callbacks

sub sflap_signon {
  my ($self, $data, $password, $language, $version, $toc) = @_;
  my ($buffer, $roasted_password);

  $roasted_password = roast_password($password, $ROASTING_KEY);

  $buffer = pack("Nnna*", 1, 1, length($toc->{sflap}->{nickname}), $toc->{sflap}->{nickname});
  $toc->{sflap}->send($AOL::SFLAP::SFLAP_SIGNON, $buffer);

  $toc->signon($toc->{sflap}->{authorizer}, $toc->{sflap}->{port}, $toc->{sflap}->{nickname}, $roasted_password, $language, $version);
}

sub sflap_data {
  my ($self, $data, $toc) = @_;
  my ($cmd, $args);

  ($cmd, $args) = ($data =~ /^(\w+)\:(.*)$/);



( run in 0.878 second using v1.01-cache-2.11-cpan-65fba6d93b7 )