This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
icmp tweak for IO::Socket
[perl5.git] / eg / uudecode
1 #!/usr/bin/perl
2 while (<>) {
3     next unless ($mode,$file) = /^begin\s*(\d*)\s*(\S*)/;
4     open(OUT,"> $file") || die "Can't create $file: $!\n";
5     while (<>) {
6             last if /^end/;
7             next if /[a-z]/;
8             next unless int((((ord() - 32) & 077) + 2) / 3) ==
9                     int(length() / 4);
10             print OUT unpack("u", $_);
11     }
12     chmod oct($mode), $file;
13     eof() && die "Missing end: $file may be truncated.\n";
14 }
15