1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#!/usr/bin/perl
# Copyright (c) 2001,2005,2007 Alexander V. Lukyanov <lav@yars.free.net>
# See COPYING file (GNU GPL) for complete license.
# This script converts netscape-style cookies to lftp set commands.
use strict;
my $file=$ARGV[0] if defined $ARGV[0];
$file=qx{
ls -t \$HOME/.netscape/cookies \\
`find \$HOME/.mozilla -name cookies.txt` | head -1
},chomp $file if !defined $file;
open COOKIES,'<',$file or die "open($file): $!";
print "# converted from $file\n";
my %cookie;
while(<COOKIES>)
{
chomp;
next if /^#/ or /^$/;
s/"/\\"/g;
s/ /%20/g;
my ($domain,undef,$path,$secure_bool,$expires,$name,$value)=split /\t/;
my $secure='';
$secure=';secure' if $secure_bool eq 'TRUE';
$domain="*$domain" if $domain =~ /^\./;
$path='' if $path eq '/';
$path=";path=$path" if $path ne '';
$value="=$value" if $name ne '';
$cookie{"$domain$path$secure"}.=" $name$value";
}
foreach(sort keys %cookie)
{
$cookie{$_}=~s/^ //;
print "set http:cookie/$_ \"$cookie{$_}\"\n";
}
|