#!/usr/bin/perl # Copyright (C) 1994,1997 Noboru Ikuta # # wbody: MIME encoder Ver.0.02 # データを MIME base64 または Quoted-Printable でエンコードする。 # # 使い方 : [ [j]perl ] wbody {-q|-b} [ ファイル名 ...] # # mimew.pl は、環境変数 HOME→wbodyと同じ→通常の@INC の順にサ # ーチされます。 # # 配布条件 : 著作権は放棄しませんが、配布・改変は自由とします。 ## データ処理のブロック長(バイト) $len = 1026; ## 実行時のメモリが厳しい場合は 54 まで減らしてみてください。 ## (mimew.pl中の$foldcol)/4*3 (デフォルトで54)の倍数にすると ## 効率がよくなります。54の倍数でなくても問題なく動きます。 $home = $ENV{'HOME'}; $perl_dir = $0; $perl_dir =~ s/\\/\//g; substr($perl_dir, rindex($perl_dir, "/")) = ''; unshift(@INC, $home, $perl_dir); require 'mimew.pl'; if ($#ARGV >= $[){ if ($ARGV[$[] =~ /^-q$/i){ shift; $coding = "qp"; }elsif ($ARGV[$[] =~ /^-b$/i){ shift; $coding = "b64"; }else{ $coding = "b64"; } }else{ $coding = "b64"; } unshift(@ARGV, '-') if $#ARGV < $[; while ($ARGV = shift) { open(ARGV, $ARGV) || die "Can't open $ARGV.\n"; binmode ARGV; while(read(ARGV, $_, $len)){ print &bodyencode($_,$coding); } print &benflush($coding); }