MAILATTACH
TAG_ADS
#!/usr/bin/perl -w
use strict;
use MIME::Lite;
use Net::SMTP;
###############################################################
# MAILATTACH - Send email with an attachment from a command line
# Version 0.2
# Copyleft 2005 - Nathan E. Pralle
#
# DESCRIPTION: This utility allows you to send an email with a file
# attachment, MIME-encoded, from the command line. Handy when you
# are SSH-ed in somewhere and can't get to a visual email client.
#
# SYNTAX: mailattach to_address subject body file1 file2 file3...
#
# REQUIRED: MIME::Lite
# Net::SMTP
#
# CONTACT: Questions? Comments?
# http://www.nathanpralle.com/contact.html
#################################################################
########################
# CONFIGURATION OPTIONS
#Address you want the mail to be from. Hardcoded for your happiness.
my $from_address = 'someone@example.com';
#Your local or remote SMTP host that you have access to
my $mail_host = 'your.smtpserver.com';
#######################
my $to_address = shift;
my $subject = shift;
my $message_body = shift;
if(scalar(@ARGV)<1){
print "SYNTAX: $0 to_email subject body file1 file2 ...\n";
exit;
}
my $msg = MIME::Lite->new (
From => $from_address,
To => $to_address,
Subject => $subject,
Type =>'multipart/mixed'
) or die "Error creating multipart container: $!\n";
$msg->attach (
Type => 'TEXT',
Data => $message_body
) or die "Error adding the text message part: $!\n";
my $filename;
$filename=shift;
while(defined $filename){
$msg->attach(
Type => f_get_type(get_filename($filename)),
Path => $filename,
Filename => get_filename($filename),
Disposition => 'attachment'
) or die "Error adding $filename: $!\n";
$filename=shift;
}
MIME::Lite->send('smtp', $mail_host, Timeout=>60);
$msg->send;
exit;
sub f_get_type{
my $filename=shift;
my($junk,$extension)=split(/\./,$filename);
if($extension eq ''){
print STDERR "Unable to locate extension on filename: $filename\n";
exit;
}
my $mimetype='';
if($extension eq "3dm"){ $mimetype="x-world/x-3dmf";}
if($extension eq "3dmf"){ $mimetype="x-world/x-3dmf";}
if($extension eq "a"){ $mimetype="application/octet-stream";}
if($extension eq "aab"){ $mimetype="application/x-authorware-bin";}
if($extension eq "aam"){ $mimetype="application/x-authorware-map";}
if($extension eq "aas"){ $mimetype="application/x-authorware-seg";}
if($extension eq "abc"){ $mimetype="text/vnd.abc";}
if($extension eq "acgi"){ $mimetype="text/html";}
if($extension eq "afl"){ $mimetype="video/animaflex";}
if($extension eq "ai"){ $mimetype="application/postscript";}
if($extension eq "aif"){ $mimetype="audio/aiff";}
if($extension eq "aif"){ $mimetype="audio/x-aiff";}
if($extension eq "aifc"){ $mimetype="audio/aiff";}
if($extension eq "aifc"){ $mimetype="audio/x-aiff";}
if($extension eq "aiff"){ $mimetype="audio/aiff";}
if($extension eq "aiff"){ $mimetype="audio/x-aiff";}
if($extension eq "aim"){ $mimetype="application/x-aim";}
if($extension eq "aip"){ $mimetype="text/x-audiosoft-intra";}
if($extension eq "ani"){ $mimetype="application/x-navi-animation";}
if($extension eq "aos"){ $mimetype="application/x-nokia-9000-communicator-add-on-software";}
if($extension eq "aps"){ $mimetype="application/mime";}
if($extension eq "arc"){ $mimetype="application/octet-stream";}
if($extension eq "arj"){ $mimetype="application/arj";}
if($extension eq "arj"){ $mimetype="application/octet-stream";}
if($extension eq "art"){ $mimetype="image/x-jg";}
if($extension eq "asf"){ $mimetype="video/x-ms-asf";}
if($extension eq "asm"){ $mimetype="text/x-asm";}
if($extension eq "asp"){ $mimetype="text/asp";}
if($extension eq "asx"){ $mimetype="application/x-mplayer2";}
if($extension eq "asx"){ $mimetype="video/x-ms-asf";}
if($extension eq "asx"){ $mimetype="video/x-ms-asf-plugin";}
if($extension eq "au"){ $mimetype="audio/basic";}
if($extension eq "au"){ $mimetype="audio/x-au";}
if($extension eq "avi"){ $mimetype="application/x-troff-msvideo";}
if($extension eq "avi"){ $mimetype="video/avi";}
if($extension eq "avi"){ $mimetype="video/msvideo";}
if($extension eq "avi"){ $mimetype="video/x-msvideo";}
if($extension eq "avs"){ $mimetype="video/avs-video";}
if($extension eq "bcpio"){ $mimetype="application/x-bcpio";}
if($extension eq "bin"){ $mimetype="application/mac-binary";}
if($extension eq "bin"){ $mimetype="application/macbinary";}
if($extension eq "bin"){ $mimetype="application/octet-stream";}
if($extension eq "bin"){ $mimetype="application/x-binary";}
if($extension eq "bin"){ $mimetype="application/x-macbinary";}
if($extension eq "bm"){ $mimetype="image/bmp";}
if($extension eq "bmp"){ $mimetype="image/bmp";}
if($extension eq "bmp"){ $mimetype="image/x-windows-bmp";}
if($extension eq "boo"){ $mimetype="application/book";}
if($extension eq "book"){ $mimetype="application/book";}
if($extension eq "boz"){ $mimetype="application/x-bzip2";}
if($extension eq "bsh"){ $mimetype="application/x-bsh";}
if($extension eq "bz"){ $mimetype="application/x-bzip";}
if($extension eq "bz2"){ $mimetype="application/x-bzip2";}
if($extension eq "c"){ $mimetype="text/plain";}
if($extension eq "c"){ $mimetype="text/x-c";}
if($extension eq "c++"){ $mimetype="text/plain";}
if($extension eq "cat"){ $mimetype="application/vnd.ms-pki.seccat";}
if($extension eq "cc"){ $mimetype="text/plain";}
if($extension eq "cc"){ $mimetype="text/x-c";}
if($extension eq "ccad"){ $mimetype="application/clariscad";}
if($extension eq "cco"){ $mimetype="application/x-cocoa";}
if($extension eq "cdf"){ $mimetype="application/cdf";}
if($extension eq "cdf"){ $mimetype="application/x-cdf";}
if($extension eq "cdf"){ $mimetype="application/x-netcdf";}
if($extension eq "cer"){ $mimetype="application/pkix-cert";}
if($extension eq "cer"){ $mimetype="application/x-x509-ca-cert";}
if($extension eq "cha"){ $mimetype="application/x-chat";}
if($extension eq "chat"){ $mimetype="application/x-chat";}
if($extension eq "class"){ $mimetype="application/java";}
if($extension eq "class"){ $mimetype="application/java-byte-code";}
if($extension eq "class"){ $mimetype="application/x-java-class";}
if($extension eq "com"){ $mimetype="application/octet-stream";}
if($extension eq "com"){ $mimetype="text/plain";}
if($extension eq "conf"){ $mimetype="text/plain";}
if($extension eq "cpio"){ $mimetype="application/x-cpio";}
if($extension eq "cpp"){ $mimetype="text/x-c";}
if($extension eq "cpt"){ $mimetype="application/mac-compactpro";}
if($extension eq "cpt"){ $mimetype="application/x-compactpro";}
if($extension eq "cpt"){ $mimetype="application/x-cpt";}
if($extension eq "crl"){ $mimetype="application/pkcs-crl";}
if($extension eq "crl"){ $mimetype="application/pkix-crl";}
if($extension eq "crt"){ $mimetype="application/pkix-cert";}
if($extension eq "crt"){ $mimetype="application/x-x509-ca-cert";}
if($extension eq "crt"){ $mimetype="application/x-x509-user-cert";}
if($extension eq "csh"){ $mimetype="application/x-csh";}
if($extension eq "csh"){ $mimetype="text/x-script.csh";}
if($extension eq "css"){ $mimetype="application/x-pointplus";}
if($extension eq "css"){ $mimetype="text/css";}
if($extension eq "csv"){ $mimetype="text/csv";}
if($extension eq "cxx"){ $mimetype="text/plain";}
if($extension eq "dcr"){ $mimetype="application/x-director";}
if($extension eq "deepv"){ $mimetype="application/x-deepv";}
if($extension eq "def"){ $mimetype="text/plain";}
if($extension eq "der"){ $mimetype="application/x-x509-ca-cert";}
if($extension eq "dif"){ $mimetype="video/x-dv";}
if($extension eq "dir"){ $mimetype="application/x-director";}
if($extension eq "dl"){ $mimetype="video/dl";}
if($extension eq "dl"){ $mimetype="video/x-dl";}
if($extension eq "doc"){ $mimetype="application/msword";}
if($extension eq "dot"){ $mimetype="application/msword";}
if($extension eq "dp"){ $mimetype="application/commonground";}
if($extension eq "drw"){ $mimetype="application/drafting";}
if($extension eq "dump"){ $mimetype="application/octet-stream";}
if($extension eq "dv"){ $mimetype="video/x-dv";}
if($extension eq "dvi"){ $mimetype="application/x-dvi";}
if($extension eq "dwf"){ $mimetype="drawing/x-dwf (old)";}
if($extension eq "dwf"){ $mimetype="model/vnd.dwf";}
if($extension eq "dwg"){ $mimetype="application/acad";}
if($extension eq "dwg"){ $mimetype="image/vnd.dwg";}
if($extension eq "dwg"){ $mimetype="image/x-dwg";}
if($extension eq "dxf"){ $mimetype="application/dxf";}
if($extension eq "dxf"){ $mimetype="image/vnd.dwg";}
if($extension eq "dxf"){ $mimetype="image/x-dwg";}
if($extension eq "dxr"){ $mimetype="application/x-director";}
if($extension eq "el"){ $mimetype="text/x-script.elisp";}
if($extension eq "elc"){ $mimetype="application/x-bytecode.elisp (compiled elisp)";}
if($extension eq "elc"){ $mimetype="application/x-elc";}
if($extension eq "env"){ $mimetype="application/x-envoy";}
if($extension eq "eps"){ $mimetype="application/postscript";}
if($extension eq "es"){ $mimetype="application/x-esrehber";}
if($extension eq "etx"){ $mimetype="text/x-setext";}
if($extension eq "evy"){ $mimetype="application/envoy";}
if($extension eq "evy"){ $mimetype="application/x-envoy";}
if($extension eq "exe"){ $mimetype="application/octet-stream";}
if($extension eq "f"){ $mimetype="text/plain";}
if($extension eq "f"){ $mimetype="text/x-fortran";}
if($extension eq "f77"){ $mimetype="text/x-fortran";}
if($extension eq "f90"){ $mimetype="text/plain";}
if($extension eq "f90"){ $mimetype="text/x-fortran";}
if($extension eq "fdf"){ $mimetype="application/vnd.fdf";}
if($extension eq "fif"){ $mimetype="application/fractals";}
if($extension eq "fif"){ $mimetype="image/fif";}
if($extension eq "fli"){ $mimetype="video/fli";}
if($extension eq "fli"){ $mimetype="video/x-fli";}
if($extension eq "flo"){ $mimetype="image/florian";}
if($extension eq "flx"){ $mimetype="text/vnd.fmi.flexstor";}
if($extension eq "fmf"){ $mimetype="video/x-atomic3d-feature";}
if($extension eq "for"){ $mimetype="text/plain";}
if($extension eq "for"){ $mimetype="text/x-fortran";}
if($extension eq "fpx"){ $mimetype="image/vnd.fpx";}
if($extension eq "fpx"){ $mimetype="image/vnd.net-fpx";}
if($extension eq "frl"){ $mimetype="application/freeloader";}
if($extension eq "funk"){ $mimetype="audio/make";}
if($extension eq "g"){ $mimetype="text/plain";}
if($extension eq "g3"){ $mimetype="image/g3fax";}
if($extension eq "gif"){ $mimetype="image/gif";}
if($extension eq "gl"){ $mimetype="video/gl";}
if($extension eq "gl"){ $mimetype="video/x-gl";}
if($extension eq "gsd"){ $mimetype="audio/x-gsm";}
if($extension eq "gsm"){ $mimetype="audio/x-gsm";}
if($extension eq "gsp"){ $mimetype="application/x-gsp";}
if($extension eq "gss"){ $mimetype="application/x-gss";}
if($extension eq "gtar"){ $mimetype="application/x-gtar";}
if($extension eq "gz"){ $mimetype="application/x-compressed";}
if($extension eq "gz"){ $mimetype="application/x-gzip";}
if($extension eq "gzip"){ $mimetype="application/x-gzip";}
if($extension eq "gzip"){ $mimetype="multipart/x-gzip";}
if($extension eq "h"){ $mimetype="text/plain";}
if($extension eq "h"){ $mimetype="text/x-h";}
if($extension eq "hdf"){ $mimetype="application/x-hdf";}
if($extension eq "help"){ $mimetype="application/x-helpfile";}
if($extension eq "hgl"){ $mimetype="application/vnd.hp-hpgl";}
if($extension eq "hh"){ $mimetype="text/plain";}
if($extension eq "hh"){ $mimetype="text/x-h";}
if($extension eq "hlb"){ $mimetype="text/x-script";}
if($extension eq "hlp"){ $mimetype="application/hlp";}
if($extension eq "hlp"){ $mimetype="application/x-helpfile";}
if($extension eq "hlp"){ $mimetype="application/x-winhelp";}
if($extension eq "hpg"){ $mimetype="application/vnd.hp-hpgl";}
if($extension eq "hpgl"){ $mimetype="application/vnd.hp-hpgl";}
if($extension eq "hqx"){ $mimetype="application/binhex";}
if($extension eq "hqx"){ $mimetype="application/binhex4";}
if($extension eq "hqx"){ $mimetype="application/mac-binhex";}
if($extension eq "hqx"){ $mimetype="application/mac-binhex40";}
if($extension eq "hqx"){ $mimetype="application/x-binhex40";}
if($extension eq "hqx"){ $mimetype="application/x-mac-binhex40";}
if($extension eq "hta"){ $mimetype="application/hta";}
if($extension eq "htc"){ $mimetype="text/x-component";}
if($extension eq "htm"){ $mimetype="text/html";}
if($extension eq "html"){ $mimetype="text/html";}
if($extension eq "htmls"){ $mimetype="text/html";}
if($extension eq "htt"){ $mimetype="text/webviewhtml";}
if($extension eq "htx"){ $mimetype="text/html";}
if($extension eq "ice"){ $mimetype="x-conference/x-cooltalk";}
if($extension eq "ico"){ $mimetype="image/x-icon";}
if($extension eq "idc"){ $mimetype="text/plain";}
if($extension eq "ief"){ $mimetype="image/ief";}
if($extension eq "iefs"){ $mimetype="image/ief";}
if($extension eq "iges"){ $mimetype="application/iges";}
if($extension eq "iges"){ $mimetype="model/iges";}
if($extension eq "igs"){ $mimetype="application/iges";}
if($extension eq "igs"){ $mimetype="model/iges";}
if($extension eq "ima"){ $mimetype="application/x-ima";}
if($extension eq "imap"){ $mimetype="application/x-httpd-imap";}
if($extension eq "inf"){ $mimetype="application/inf";}
if($extension eq "ins"){ $mimetype="application/x-internett-signup";}
if($extension eq "ip"){ $mimetype="application/x-ip2";}
if($extension eq "isu"){ $mimetype="video/x-isvideo";}
if($extension eq "it"){ $mimetype="audio/it";}
if($extension eq "iv"){ $mimetype="application/x-inventor";}
if($extension eq "ivr"){ $mimetype="i-world/i-vrml";}
if($extension eq "ivy"){ $mimetype="application/x-livescreen";}
if($extension eq "jam"){ $mimetype="audio/x-jam";}
if($extension eq "jav"){ $mimetype="text/plain";}
if($extension eq "jav"){ $mimetype="text/x-java-source";}
if($extension eq "java"){ $mimetype="text/plain";}
if($extension eq "java"){ $mimetype="text/x-java-source";}
if($extension eq "jcm"){ $mimetype="application/x-java-commerce";}
if($extension eq "jfif"){ $mimetype="image/jpeg";}
if($extension eq "jfif"){ $mimetype="image/pjpeg";}
if($extension eq "jfif-tbnl"){ $mimetype="image/jpeg";}
if($extension eq "jpe"){ $mimetype="image/jpeg";}
if($extension eq "jpe"){ $mimetype="image/pjpeg";}
if($extension eq "jpeg"){ $mimetype="image/jpeg";}
if($extension eq "jpeg"){ $mimetype="image/pjpeg";}
if($extension eq "jpg"){ $mimetype="image/jpeg";}
if($extension eq "jpg"){ $mimetype="image/pjpeg";}
if($extension eq "jps"){ $mimetype="image/x-jps";}
if($extension eq "js"){ $mimetype="application/x-javascript";}
if($extension eq "jut"){ $mimetype="image/jutvision";}
if($extension eq "kar"){ $mimetype="audio/midi";}
if($extension eq "kar"){ $mimetype="music/x-karaoke";}
if($extension eq "ksh"){ $mimetype="application/x-ksh";}
if($extension eq "ksh"){ $mimetype="text/x-script.ksh";}
if($extension eq "la"){ $mimetype="audio/nspaudio";}
if($extension eq "la"){ $mimetype="audio/x-nspaudio";}
if($extension eq "lam"){ $mimetype="audio/x-liveaudio";}
if($extension eq "latex"){ $mimetype="application/x-latex";}
if($extension eq "lha"){ $mimetype="application/lha";}
if($extension eq "lha"){ $mimetype="application/octet-stream";}
if($extension eq "lha"){ $mimetype="application/x-lha";}
if($extension eq "lhx"){ $mimetype="application/octet-stream";}
if($extension eq "list"){ $mimetype="text/plain";}
if($extension eq "lma"){ $mimetype="audio/nspaudio";}
if($extension eq "lma"){ $mimetype="audio/x-nspaudio";}
if($extension eq "log"){ $mimetype="text/plain";}
if($extension eq "lsp"){ $mimetype="application/x-lisp";}
if($extension eq "lsp"){ $mimetype="text/x-script.lisp";}
if($extension eq "lst"){ $mimetype="text/plain";}
if($extension eq "lsx"){ $mimetype="text/x-la-asf";}
if($extension eq "ltx"){ $mimetype="application/x-latex";}
if($extension eq "lzh"){ $mimetype="application/octet-stream";}
if($extension eq "lzh"){ $mimetype="application/x-lzh";}
if($extension eq "lzx"){ $mimetype="application/lzx";}
if($extension eq "lzx"){ $mimetype="application/octet-stream";}
if($extension eq "lzx"){ $mimetype="application/x-lzx";}
if($extension eq "m"){ $mimetype="text/plain";}
if($extension eq "m"){ $mimetype="text/x-m";}
if($extension eq "m1v"){ $mimetype="video/mpeg";}
if($extension eq "m2a"){ $mimetype="audio/mpeg";}
if($extension eq "m2v"){ $mimetype="video/mpeg";}
if($extension eq "m3u"){ $mimetype="audio/x-mpequrl";}
if($extension eq "man"){ $mimetype="application/x-troff-man";}
if($extension eq "map"){ $mimetype="application/x-navimap";}
if($extension eq "mar"){ $mimetype="text/plain";}
if($extension eq "mbd"){ $mimetype="application/mbedlet";}
if($extension eq "mc\$"){ $mimetype="application/x-magic-cap-package-1.0";}
if($extension eq "mcd"){ $mimetype="application/mcad";}
if($extension eq "mcd"){ $mimetype="application/x-mathcad";}
if($extension eq "mcf"){ $mimetype="image/vasa";}
if($extension eq "mcf"){ $mimetype="text/mcf";}
if($extension eq "mcp"){ $mimetype="application/netmc";}
if($extension eq "me"){ $mimetype="application/x-troff-me";}
if($extension eq "mht"){ $mimetype="message/rfc822";}
if($extension eq "mhtml"){ $mimetype="message/rfc822";}
if($extension eq "mid"){ $mimetype="application/x-midi";}
if($extension eq "mid"){ $mimetype="audio/midi";}
if($extension eq "mid"){ $mimetype="audio/x-mid";}
if($extension eq "mid"){ $mimetype="audio/x-midi";}
if($extension eq "mid"){ $mimetype="music/crescendo";}
if($extension eq "mid"){ $mimetype="x-music/x-midi";}
if($extension eq "midi"){ $mimetype="application/x-midi";}
if($extension eq "midi"){ $mimetype="audio/midi";}
if($extension eq "midi"){ $mimetype="audio/x-mid";}
if($extension eq "midi"){ $mimetype="audio/x-midi";}
if($extension eq "midi"){ $mimetype="music/crescendo";}
if($extension eq "midi"){ $mimetype="x-music/x-midi";}
if($extension eq "mif"){ $mimetype="application/x-frame";}
if($extension eq "mif"){ $mimetype="application/x-mif";}
if($extension eq "mime"){ $mimetype="message/rfc822";}
if($extension eq "mime"){ $mimetype="www/mime";}
if($extension eq "mjf"){ $mimetype="audio/x-vnd.audioexplosion.mjuicemediafile";}
if($extension eq "mjpg"){ $mimetype="video/x-motion-jpeg";}
if($extension eq "mm"){ $mimetype="application/base64";}
if($extension eq "mm"){ $mimetype="application/x-meme";}
if($extension eq "mme"){ $mimetype="application/base64";}
if($extension eq "mod"){ $mimetype="audio/mod";}
if($extension eq "mod"){ $mimetype="audio/x-mod";}
if($extension eq "moov"){ $mimetype="video/quicktime";}
if($extension eq "mov"){ $mimetype="video/quicktime";}
if($extension eq "movie"){ $mimetype="video/x-sgi-movie";}
if($extension eq "mp2"){ $mimetype="audio/mpeg";}
if($extension eq "mp2"){ $mimetype="audio/x-mpeg";}
if($extension eq "mp2"){ $mimetype="video/mpeg";}
if($extension eq "mp2"){ $mimetype="video/x-mpeg";}
if($extension eq "mp2"){ $mimetype="video/x-mpeq2a";}
if($extension eq "mp3"){ $mimetype="audio/mpeg3";}
if($extension eq "mp3"){ $mimetype="audio/x-mpeg-3";}
if($extension eq "mp3"){ $mimetype="video/mpeg";}
if($extension eq "mp3"){ $mimetype="video/x-mpeg";}
if($extension eq "mpa"){ $mimetype="audio/mpeg";}
if($extension eq "mpa"){ $mimetype="video/mpeg";}
if($extension eq "mpc"){ $mimetype="application/x-project";}
if($extension eq "mpe"){ $mimetype="video/mpeg";}
if($extension eq "mpeg"){ $mimetype="video/mpeg";}
if($extension eq "mpg"){ $mimetype="audio/mpeg";}
if($extension eq "mpg"){ $mimetype="video/mpeg";}
if($extension eq "mpga"){ $mimetype="audio/mpeg";}
if($extension eq "mpp"){ $mimetype="application/vnd.ms-project";}
if($extension eq "mpt"){ $mimetype="application/x-project";}
if($extension eq "mpv"){ $mimetype="application/x-project";}
if($extension eq "mpx"){ $mimetype="application/x-project";}
if($extension eq "mrc"){ $mimetype="application/marc";}
if($extension eq "ms"){ $mimetype="application/x-troff-ms";}
if($extension eq "mv"){ $mimetype="video/x-sgi-movie";}
if($extension eq "my"){ $mimetype="audio/make";}
if($extension eq "mzz"){ $mimetype="application/x-vnd.audioexplosion.mzz";}
if($extension eq "nap"){ $mimetype="image/naplps";}
if($extension eq "naplps"){ $mimetype="image/naplps";}
if($extension eq "nc"){ $mimetype="application/x-netcdf";}
if($extension eq "ncm"){ $mimetype="application/vnd.nokia.configuration-message";}
if($extension eq "nif"){ $mimetype="image/x-niff";}
if($extension eq "niff"){ $mimetype="image/x-niff";}
if($extension eq "nix"){ $mimetype="application/x-mix-transfer";}
if($extension eq "nsc"){ $mimetype="application/x-conference";}
if($extension eq "nvd"){ $mimetype="application/x-navidoc";}
if($extension eq "o"){ $mimetype="application/octet-stream";}
if($extension eq "oda"){ $mimetype="application/oda";}
if($extension eq "omc"){ $mimetype="application/x-omc";}
if($extension eq "omcd"){ $mimetype="application/x-omcdatamaker";}
if($extension eq "omcr"){ $mimetype="application/x-omcregerator";}
if($extension eq "p"){ $mimetype="text/x-pascal";}
if($extension eq "p10"){ $mimetype="application/pkcs10";}
if($extension eq "p10"){ $mimetype="application/x-pkcs10";}
if($extension eq "p12"){ $mimetype="application/pkcs-12";}
if($extension eq "p12"){ $mimetype="application/x-pkcs12";}
if($extension eq "p7a"){ $mimetype="application/x-pkcs7-signature";}
if($extension eq "p7c"){ $mimetype="application/pkcs7-mime";}
if($extension eq "p7c"){ $mimetype="application/x-pkcs7-mime";}
if($extension eq "p7m"){ $mimetype="application/pkcs7-mime";}
if($extension eq "p7m"){ $mimetype="application/x-pkcs7-mime";}
if($extension eq "p7r"){ $mimetype="application/x-pkcs7-certreqresp";}
if($extension eq "p7s"){ $mimetype="application/pkcs7-signature";}
if($extension eq "part"){ $mimetype="application/pro_eng";}
if($extension eq "pas"){ $mimetype="text/pascal";}
if($extension eq "pbm"){ $mimetype="image/x-portable-bitmap";}
if($extension eq "pcl"){ $mimetype="application/vnd.hp-pcl";}
if($extension eq "pcl"){ $mimetype="application/x-pcl";}
if($extension eq "pct"){ $mimetype="image/x-pict";}
if($extension eq "pcx"){ $mimetype="image/x-pcx";}
if($extension eq "pdb"){ $mimetype="chemical/x-pdb";}
if($extension eq "pdf"){ $mimetype="application/pdf";}
if($extension eq "pfunk"){ $mimetype="audio/make";}
if($extension eq "pfunk"){ $mimetype="audio/make.my.funk";}
if($extension eq "pgm"){ $mimetype="image/x-portable-graymap";}
if($extension eq "pgm"){ $mimetype="image/x-portable-greymap";}
if($extension eq "pic"){ $mimetype="image/pict";}
if($extension eq "pict"){ $mimetype="image/pict";}
if($extension eq "pkg"){ $mimetype="application/x-newton-compatible-pkg";}
if($extension eq "pko"){ $mimetype="application/vnd.ms-pki.pko";}
if($extension eq "pl"){ $mimetype="text/plain";}
if($extension eq "pl"){ $mimetype="text/x-script.perl";}
if($extension eq "plx"){ $mimetype="application/x-pixclscript";}
if($extension eq "pm"){ $mimetype="image/x-xpixmap";}
if($extension eq "pm"){ $mimetype="text/x-script.perl-module";}
if($extension eq "pm4"){ $mimetype="application/x-pagemaker";}
if($extension eq "pm5"){ $mimetype="application/x-pagemaker";}
if($extension eq "png"){ $mimetype="image/png";}
if($extension eq "pnm"){ $mimetype="application/x-portable-anymap";}
if($extension eq "pnm"){ $mimetype="image/x-portable-anymap";}
if($extension eq "pot"){ $mimetype="application/mspowerpoint";}
if($extension eq "pot"){ $mimetype="application/vnd.ms-powerpoint";}
if($extension eq "pov"){ $mimetype="model/x-pov";}
if($extension eq "ppa"){ $mimetype="application/vnd.ms-powerpoint";}
if($extension eq "ppm"){ $mimetype="image/x-portable-pixmap";}
if($extension eq "pps"){ $mimetype="application/mspowerpoint";}
if($extension eq "pps"){ $mimetype="application/vnd.ms-powerpoint";}
if($extension eq "ppt"){ $mimetype="application/mspowerpoint";}
if($extension eq "ppt"){ $mimetype="application/powerpoint";}
if($extension eq "ppt"){ $mimetype="application/vnd.ms-powerpoint";}
if($extension eq "ppt"){ $mimetype="application/x-mspowerpoint";}
if($extension eq "ppz"){ $mimetype="application/mspowerpoint";}
if($extension eq "pre"){ $mimetype="application/x-freelance";}
if($extension eq "prt"){ $mimetype="application/pro_eng";}
if($extension eq "ps"){ $mimetype="application/postscript";}
if($extension eq "psd"){ $mimetype="application/octet-stream";}
if($extension eq "pvu"){ $mimetype="paleovu/x-pv";}
if($extension eq "pwz"){ $mimetype="application/vnd.ms-powerpoint";}
if($extension eq "py"){ $mimetype="text/x-script.phyton";}
if($extension eq "pyc"){ $mimetype="applicaiton/x-bytecode.python";}
if($extension eq "qcp"){ $mimetype="audio/vnd.qcelp";}
if($extension eq "qd3"){ $mimetype="x-world/x-3dmf";}
if($extension eq "qd3d"){ $mimetype="x-world/x-3dmf";}
if($extension eq "qif"){ $mimetype="image/x-quicktime";}
if($extension eq "qt"){ $mimetype="video/quicktime";}
if($extension eq "qtc"){ $mimetype="video/x-qtc";}
if($extension eq "qti"){ $mimetype="image/x-quicktime";}
if($extension eq "qtif"){ $mimetype="image/x-quicktime";}
if($extension eq "ra"){ $mimetype="audio/x-pn-realaudio";}
if($extension eq "ra"){ $mimetype="audio/x-pn-realaudio-plugin";}
if($extension eq "ra"){ $mimetype="audio/x-realaudio";}
if($extension eq "ram"){ $mimetype="audio/x-pn-realaudio";}
if($extension eq "ras"){ $mimetype="application/x-cmu-raster";}
if($extension eq "ras"){ $mimetype="image/cmu-raster";}
if($extension eq "ras"){ $mimetype="image/x-cmu-raster";}
if($extension eq "rast"){ $mimetype="image/cmu-raster";}
if($extension eq "rexx"){ $mimetype="text/x-script.rexx";}
if($extension eq "rf"){ $mimetype="image/vnd.rn-realflash";}
if($extension eq "rgb"){ $mimetype="image/x-rgb";}
if($extension eq "rm"){ $mimetype="application/vnd.rn-realmedia";}
if($extension eq "rm"){ $mimetype="audio/x-pn-realaudio";}
if($extension eq "rmi"){ $mimetype="audio/mid";}
if($extension eq "rmm"){ $mimetype="audio/x-pn-realaudio";}
if($extension eq "rmp"){ $mimetype="audio/x-pn-realaudio";}
if($extension eq "rmp"){ $mimetype="audio/x-pn-realaudio-plugin";}
if($extension eq "rng"){ $mimetype="application/ringing-tones";}
if($extension eq "rng"){ $mimetype="application/vnd.nokia.ringing-tone";}
if($extension eq "rnx"){ $mimetype="application/vnd.rn-realplayer";}
if($extension eq "roff"){ $mimetype="application/x-troff";}
if($extension eq "rp"){ $mimetype="image/vnd.rn-realpix";}
if($extension eq "rpm"){ $mimetype="audio/x-pn-realaudio-plugin";}
if($extension eq "rt"){ $mimetype="text/richtext";}
if($extension eq "rt"){ $mimetype="text/vnd.rn-realtext";}
if($extension eq "rtf"){ $mimetype="application/rtf";}
if($extension eq "rtf"){ $mimetype="application/x-rtf";}
if($extension eq "rtf"){ $mimetype="text/richtext";}
if($extension eq "rtx"){ $mimetype="application/rtf";}
if($extension eq "rtx"){ $mimetype="text/richtext";}
if($extension eq "rv"){ $mimetype="video/vnd.rn-realvideo";}
if($extension eq "s"){ $mimetype="text/x-asm";}
if($extension eq "s3m"){ $mimetype="audio/s3m";}
if($extension eq "saveme"){ $mimetype="application/octet-stream";}
if($extension eq "sbk"){ $mimetype="application/x-tbook";}
if($extension eq "scm"){ $mimetype="application/x-lotusscreencam";}
if($extension eq "scm"){ $mimetype="text/x-script.guile";}
if($extension eq "scm"){ $mimetype="text/x-script.scheme";}
if($extension eq "scm"){ $mimetype="video/x-scm";}
if($extension eq "sdml"){ $mimetype="text/plain";}
if($extension eq "sdp"){ $mimetype="application/sdp";}
if($extension eq "sdp"){ $mimetype="application/x-sdp";}
if($extension eq "sdr"){ $mimetype="application/sounder";}
if($extension eq "sea"){ $mimetype="application/sea";}
if($extension eq "sea"){ $mimetype="application/x-sea";}
if($extension eq "set"){ $mimetype="application/set";}
if($extension eq "sgm"){ $mimetype="text/sgml";}
if($extension eq "sgm"){ $mimetype="text/x-sgml";}
if($extension eq "sgml"){ $mimetype="text/sgml";}
if($extension eq "sgml"){ $mimetype="text/x-sgml";}
if($extension eq "sh"){ $mimetype="application/x-bsh";}
if($extension eq "sh"){ $mimetype="application/x-sh";}
if($extension eq "sh"){ $mimetype="application/x-shar";}
if($extension eq "sh"){ $mimetype="text/x-script.sh";}
if($extension eq "shar"){ $mimetype="application/x-bsh";}
if($extension eq "shar"){ $mimetype="application/x-shar";}
if($extension eq "shtml"){ $mimetype="text/html";}
if($extension eq "shtml"){ $mimetype="text/x-server-parsed-html";}
if($extension eq "sid"){ $mimetype="audio/x-psid";}
if($extension eq "sit"){ $mimetype="application/x-sit";}
if($extension eq "sit"){ $mimetype="application/x-stuffit";}
if($extension eq "skd"){ $mimetype="application/x-koan";}
if($extension eq "skm"){ $mimetype="application/x-koan";}
if($extension eq "skp"){ $mimetype="application/x-koan";}
if($extension eq "skt"){ $mimetype="application/x-koan";}
if($extension eq "sl"){ $mimetype="application/x-seelogo";}
if($extension eq "smi"){ $mimetype="application/smil";}
if($extension eq "smil"){ $mimetype="application/smil";}
if($extension eq "snd"){ $mimetype="audio/basic";}
if($extension eq "snd"){ $mimetype="audio/x-adpcm";}
if($extension eq "sol"){ $mimetype="application/solids";}
if($extension eq "spc"){ $mimetype="application/x-pkcs7-certificates";}
if($extension eq "spc"){ $mimetype="text/x-speech";}
if($extension eq "spl"){ $mimetype="application/futuresplash";}
if($extension eq "spr"){ $mimetype="application/x-sprite";}
if($extension eq "sprite"){ $mimetype="application/x-sprite";}
if($extension eq "src"){ $mimetype="application/x-wais-source";}
if($extension eq "ssi"){ $mimetype="text/x-server-parsed-html";}
if($extension eq "ssm"){ $mimetype="application/streamingmedia";}
if($extension eq "sst"){ $mimetype="application/vnd.ms-pki.certstore";}
if($extension eq "step"){ $mimetype="application/step";}
if($extension eq "stl"){ $mimetype="application/sla";}
if($extension eq "stl"){ $mimetype="application/vnd.ms-pki.stl";}
if($extension eq "stl"){ $mimetype="application/x-navistyle";}
if($extension eq "stp"){ $mimetype="application/step";}
if($extension eq "sv4cpio"){ $mimetype="application/x-sv4cpio";}
if($extension eq "sv4crc"){ $mimetype="application/x-sv4crc";}
if($extension eq "svf"){ $mimetype="image/vnd.dwg";}
if($extension eq "svf"){ $mimetype="image/x-dwg";}
if($extension eq "svr"){ $mimetype="application/x-world";}
if($extension eq "svr"){ $mimetype="x-world/x-svr";}
if($extension eq "swf"){ $mimetype="application/x-shockwave-flash";}
if($extension eq "t"){ $mimetype="application/x-troff";}
if($extension eq "talk"){ $mimetype="text/x-speech";}
if($extension eq "tar"){ $mimetype="application/x-tar";}
if($extension eq "tbk"){ $mimetype="application/toolbook";}
if($extension eq "tbk"){ $mimetype="application/x-tbook";}
if($extension eq "tcl"){ $mimetype="application/x-tcl";}
if($extension eq "tcl"){ $mimetype="text/x-script.tcl";}
if($extension eq "tcsh"){ $mimetype="text/x-script.tcsh";}
if($extension eq "tex"){ $mimetype="application/x-tex";}
if($extension eq "texi"){ $mimetype="application/x-texinfo";}
if($extension eq "texinfo"){ $mimetype="application/x-texinfo";}
if($extension eq "text"){ $mimetype="application/plain";}
if($extension eq "text"){ $mimetype="text/plain";}
if($extension eq "tgz"){ $mimetype="application/gnutar";}
if($extension eq "tgz"){ $mimetype="application/x-compressed";}
if($extension eq "tif"){ $mimetype="image/tiff";}
if($extension eq "tif"){ $mimetype="image/x-tiff";}
if($extension eq "tiff"){ $mimetype="image/tiff";}
if($extension eq "tiff"){ $mimetype="image/x-tiff";}
if($extension eq "tr"){ $mimetype="application/x-troff";}
if($extension eq "tsi"){ $mimetype="audio/tsp-audio";}
if($extension eq "tsp"){ $mimetype="application/dsptype";}
if($extension eq "tsp"){ $mimetype="audio/tsplayer";}
if($extension eq "tsv"){ $mimetype="text/tab-separated-values";}
if($extension eq "turbot"){ $mimetype="image/florian";}
if($extension eq "txt"){ $mimetype="text/plain";}
if($extension eq "uil"){ $mimetype="text/x-uil";}
if($extension eq "uni"){ $mimetype="text/uri-list";}
if($extension eq "unis"){ $mimetype="text/uri-list";}
if($extension eq "unv"){ $mimetype="application/i-deas";}
if($extension eq "uri"){ $mimetype="text/uri-list";}
if($extension eq "uris"){ $mimetype="text/uri-list";}
if($extension eq "ustar"){ $mimetype="application/x-ustar";}
if($extension eq "ustar"){ $mimetype="multipart/x-ustar";}
if($extension eq "uu"){ $mimetype="application/octet-stream";}
if($extension eq "uu"){ $mimetype="text/x-uuencode";}
if($extension eq "uue"){ $mimetype="text/x-uuencode";}
if($extension eq "vcd"){ $mimetype="application/x-cdlink";}
if($extension eq "vcs"){ $mimetype="text/x-vcalendar";}
if($extension eq "vda"){ $mimetype="application/vda";}
if($extension eq "vdo"){ $mimetype="video/vdo";}
if($extension eq "vew"){ $mimetype="application/groupwise";}
if($extension eq "viv"){ $mimetype="video/vivo";}
if($extension eq "viv"){ $mimetype="video/vnd.vivo";}
if($extension eq "vivo"){ $mimetype="video/vivo";}
if($extension eq "vivo"){ $mimetype="video/vnd.vivo";}
if($extension eq "vmd"){ $mimetype="application/vocaltec-media-desc";}
if($extension eq "vmf"){ $mimetype="application/vocaltec-media-file";}
if($extension eq "voc"){ $mimetype="audio/voc";}
if($extension eq "voc"){ $mimetype="audio/x-voc";}
if($extension eq "vos"){ $mimetype="video/vosaic";}
if($extension eq "vox"){ $mimetype="audio/voxware";}
if($extension eq "vqe"){ $mimetype="audio/x-twinvq-plugin";}
if($extension eq "vqf"){ $mimetype="audio/x-twinvq";}
if($extension eq "vql"){ $mimetype="audio/x-twinvq-plugin";}
if($extension eq "vrml"){ $mimetype="application/x-vrml";}
if($extension eq "vrml"){ $mimetype="model/vrml";}
if($extension eq "vrml"){ $mimetype="x-world/x-vrml";}
if($extension eq "vrt"){ $mimetype="x-world/x-vrt";}
if($extension eq "vsd"){ $mimetype="application/x-visio";}
if($extension eq "vst"){ $mimetype="application/x-visio";}
if($extension eq "vsw"){ $mimetype="application/x-visio";}
if($extension eq "w60"){ $mimetype="application/wordperfect6.0";}
if($extension eq "w61"){ $mimetype="application/wordperfect6.1";}
if($extension eq "w6w"){ $mimetype="application/msword";}
if($extension eq "wav"){ $mimetype="audio/wav";}
if($extension eq "wav"){ $mimetype="audio/x-wav";}
if($extension eq "wb1"){ $mimetype="application/x-qpro";}
if($extension eq "wbmp"){ $mimetype="image/vnd.wap.wbmp";}
if($extension eq "web"){ $mimetype="application/vnd.xara";}
if($extension eq "wiz"){ $mimetype="application/msword";}
if($extension eq "wk1"){ $mimetype="application/x-123";}
if($extension eq "wmf"){ $mimetype="windows/metafile";}
if($extension eq "wml"){ $mimetype="text/vnd.wap.wml";}
if($extension eq "wmlc"){ $mimetype="application/vnd.wap.wmlc";}
if($extension eq "wmls"){ $mimetype="text/vnd.wap.wmlscript";}
if($extension eq "wmlsc"){ $mimetype="application/vnd.wap.wmlscriptc";}
if($extension eq "word"){ $mimetype="application/msword";}
if($extension eq "wp"){ $mimetype="application/wordperfect";}
if($extension eq "wp5"){ $mimetype="application/wordperfect";}
if($extension eq "wp5"){ $mimetype="application/wordperfect6.0";}
if($extension eq "wp6"){ $mimetype="application/wordperfect";}
if($extension eq "wpd"){ $mimetype="application/wordperfect";}
if($extension eq "wpd"){ $mimetype="application/x-wpwin";}
if($extension eq "wq1"){ $mimetype="application/x-lotus";}
if($extension eq "wri"){ $mimetype="application/mswrite";}
if($extension eq "wri"){ $mimetype="application/x-wri";}
if($extension eq "wrl"){ $mimetype="application/x-world";}
if($extension eq "wrl"){ $mimetype="model/vrml";}
if($extension eq "wrl"){ $mimetype="x-world/x-vrml";}
if($extension eq "wrz"){ $mimetype="model/vrml";}
if($extension eq "wrz"){ $mimetype="x-world/x-vrml";}
if($extension eq "wsc"){ $mimetype="text/scriplet";}
if($extension eq "wsrc"){ $mimetype="application/x-wais-source";}
if($extension eq "wtk"){ $mimetype="application/x-wintalk";}
if($extension eq "xbm"){ $mimetype="image/x-xbitmap";}
if($extension eq "xbm"){ $mimetype="image/x-xbm";}
if($extension eq "xbm"){ $mimetype="image/xbm";}
if($extension eq "xdr"){ $mimetype="video/x-amt-demorun";}
if($extension eq "xgz"){ $mimetype="xgl/drawing";}
if($extension eq "xif"){ $mimetype="image/vnd.xiff";}
if($extension eq "xl"){ $mimetype="application/excel";}
if($extension eq "xla"){ $mimetype="application/excel";}
if($extension eq "xla"){ $mimetype="application/x-excel";}
if($extension eq "xla"){ $mimetype="application/x-msexcel";}
if($extension eq "xlb"){ $mimetype="application/excel";}
if($extension eq "xlb"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xlb"){ $mimetype="application/x-excel";}
if($extension eq "xlc"){ $mimetype="application/excel";}
if($extension eq "xlc"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xlc"){ $mimetype="application/x-excel";}
if($extension eq "xld"){ $mimetype="application/excel";}
if($extension eq "xld"){ $mimetype="application/x-excel";}
if($extension eq "xlk"){ $mimetype="application/excel";}
if($extension eq "xlk"){ $mimetype="application/x-excel";}
if($extension eq "xll"){ $mimetype="application/excel";}
if($extension eq "xll"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xll"){ $mimetype="application/x-excel";}
if($extension eq "xlm"){ $mimetype="application/excel";}
if($extension eq "xlm"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xlm"){ $mimetype="application/x-excel";}
if($extension eq "xls"){ $mimetype="application/excel";}
if($extension eq "xls"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xls"){ $mimetype="application/x-excel";}
if($extension eq "xls"){ $mimetype="application/x-msexcel";}
if($extension eq "xlt"){ $mimetype="application/excel";}
if($extension eq "xlt"){ $mimetype="application/x-excel";}
if($extension eq "xlv"){ $mimetype="application/excel";}
if($extension eq "xlv"){ $mimetype="application/x-excel";}
if($extension eq "xlw"){ $mimetype="application/excel";}
if($extension eq "xlw"){ $mimetype="application/vnd.ms-excel";}
if($extension eq "xlw"){ $mimetype="application/x-excel";}
if($extension eq "xlw"){ $mimetype="application/x-msexcel";}
if($extension eq "xm"){ $mimetype="audio/xm";}
if($extension eq "xml"){ $mimetype="application/xml";}
if($extension eq "xml"){ $mimetype="text/xml";}
if($extension eq "xmz"){ $mimetype="xgl/movie";}
if($extension eq "xpix"){ $mimetype="application/x-vnd.ls-xpix";}
if($extension eq "xpm"){ $mimetype="image/x-xpixmap";}
if($extension eq "xpm"){ $mimetype="image/xpm";}
if($extension eq "x-png"){ $mimetype="image/png";}
if($extension eq "xsr"){ $mimetype="video/x-amt-showrun";}
if($extension eq "xwd"){ $mimetype="image/x-xwd";}
if($extension eq "xwd"){ $mimetype="image/x-xwindowdump";}
if($extension eq "xyz"){ $mimetype="chemical/x-pdb";}
if($extension eq "z"){ $mimetype="application/x-compress";}
if($extension eq "z"){ $mimetype="application/x-compressed";}
if($extension eq "zip"){ $mimetype="application/x-compressed";}
if($extension eq "zip"){ $mimetype="application/x-zip-compressed";}
if($extension eq "zip"){ $mimetype="application/zip";}
if($extension eq "zip"){ $mimetype="multipart/x-zip";}
if($extension eq "zoo"){ $mimetype="application/octet-stream";}
if($extension eq "zsh"){ $mimetype="text/x-script.zsh";}
if($mimetype eq ''){
print STDERR "Can't locate mimetype for $extension!\n";
exit;
}
return $mimetype;
}
sub get_filename{
my $path=shift;
my @list=split(/\//,$path);
return pop(@list);
}
This page and all content (C)2002-2004 Nathan E. Pralle.
www.nathanpralle.com
Unauthorized distribution is prohibited except with written permission of the author.