Add built local::lib
[catagits/Gitalist.git] / local-lib5 / lib / perl5 / MIME / Types.pm
1 # Copyrights 1999,2001-2009 by Mark Overmeer.
2 #  For other contributors see ChangeLog.
3 # See the manual pages for details on the licensing terms.
4 # Pod stripped from pm file by OODoc 1.06.
5
6 package MIME::Types;
7 use vars '$VERSION';
8 $VERSION = '1.28';
9
10
11 use strict;
12
13 use MIME::Type ();
14 use Carp;
15
16
17 my %list;
18 sub new(@) { (bless {}, shift)->init( {@_} ) }
19
20 my $mime_type_definitions;  # see bottom file
21
22 sub init($)
23 {   my ($self, $args) = @_;
24
25     unless(keys %list)   # already read
26     {   local $_;
27         local $/  = "\n";
28
29         foreach (split /^/, $mime_type_definitions)
30         {   s/\#.*//;
31             next if m/^$/;
32
33             my $os = s/^(\w+)\:// ? qr/$1/i : undef;
34
35             my ($type, $extensions, $encoding) = split;
36             if(   !$encoding
37                && defined $extensions
38                && $extensions =~ m/^(?:base64|7bit|8bit|quoted\-printable)$/
39               )
40             {    # second column is empty
41                  $encoding   = $extensions;
42                  $extensions = undef;
43             }
44
45             next if $args->{only_complete} && ! $extensions;
46             my $extent = $extensions ? [ split /\,/, $extensions ] : undef;
47
48             my $simplified = MIME::Type->simplified($type);
49             push @{$list{$simplified}}, MIME::Type->new
50               ( type       => $type
51               , extensions => $extent
52               , encoding   => $encoding
53               , system     => $os
54               );
55         }
56     }
57
58     undef $mime_type_definitions;   # to reduce memory consumption
59     $self;
60 }
61
62 my %type_index;
63 sub create_type_index()
64 {   my $self = shift;
65
66     my @os_specific;
67     while(my ($simple, $definitions) = each %list)
68     {   foreach my $def (@$definitions)
69         {   if(defined(my $sys = $def->system))
70             {   # OS specific definitions will overrule the
71                 # unspecific definitions, so must be postponed till
72                 # the end.
73                 push @os_specific, $def if $^O =~ $sys;
74             }
75             else
76             {   $type_index{$_} = $def foreach $def->extensions;
77             }
78         }
79     }
80
81     foreach my $def (@os_specific)
82     {   $type_index{$_} = $def foreach $def->extensions;
83     }
84
85     $self;
86 }
87
88 #-------------------------------------------
89
90
91 sub type($)
92 {  my $mime  = MIME::Type->simplified($_[1]) or return;
93    return () unless exists $list{$mime};
94    wantarray ? @{$list{$mime}} : $list{$mime}[0];
95 }
96
97 #-------------------------------------------
98
99
100 sub mimeTypeOf($)
101 {   my ($self, $name) = @_;
102     $self->create_type_index unless keys %type_index;
103     $name =~ s/.*\.//;
104     $type_index{lc $name};
105 }
106
107 #-------------------------------------------
108
109
110 sub addType(@)
111 {   my $self = shift;
112
113     foreach my $type (@_)
114     {   my $simplified = $type->simplified;
115         push @{$list{$simplified}}, $type;
116     }
117
118     %type_index = ();
119     $self;
120 }
121
122 #-------------------------------------------
123
124
125 sub types
126 {   my $self = shift;
127
128     $self->create_type_index unless keys %type_index;
129     return values %type_index;
130 }
131
132 #-------------------------------------------
133
134
135 sub extensions
136 {    my $self = shift;
137     $self->create_type_index unless keys %type_index;
138
139     return keys %type_index;
140 }
141
142 #-------------------------------------------
143
144
145 #-------------------------------------------
146
147 require Exporter;
148 use vars qw/@ISA @EXPORT_OK/;
149 @ISA       = qw(Exporter);
150 @EXPORT_OK = qw(by_suffix by_mediatype import_mime_types);
151
152 #-------------------------------------------
153
154
155 my $mime_types;
156
157 sub by_suffix($)
158 {   my $filename = shift;
159     $mime_types ||= MIME::Types->new;
160     my $mime     = $mime_types->mimeTypeOf($filename);
161
162     my @data     = defined $mime ? ($mime->type, $mime->encoding) : ('','');
163     wantarray ? @data : \@data;
164 }
165
166 #-------------------------------------------
167
168
169 sub by_mediatype($)
170 {   my $type = shift;
171     my @found;
172
173     %list or init {};
174
175     if(index($type, '/') >= 0)
176     {   my $simplified = MIME::Type->simplified($type);
177         my $mime = $list{$simplified};
178         push @found, @$mime if defined $mime;
179     }
180     else
181     {   my $mime = ref $type ? $type : qr/$type/i;
182         @found = map {@{$list{$_}}}
183                     grep {$_ =~ $mime}
184                         keys %list;
185     }
186
187     my @data;
188     foreach my $mime (@found)
189     {   push @data, map { [$_, $mime->type, $mime->encoding] }
190                        $mime->extensions;
191     }
192
193     wantarray ? @data : \@data;
194 }
195
196 #-------------------------------------------
197
198
199 sub import_mime_types($)
200 {   my $filename = shift;
201     use Carp;
202     croak <<'CROAK';
203 import_mime_types is not supported anymore: if you have types to add
204 please send them to the author.
205 CROAK
206 }
207
208 #-------------------------------------------
209 # Internet media type registry is at
210 # http://www.iana.org/assignments/media-types/
211
212 $mime_type_definitions = <<__MIMETYPES__;
213 application/activemessage
214 application/andrew-inset                ez
215 application/appledouble                                 base64
216 application/applefile                                   base64
217 application/atomicmail
218 application/atom+xml                    atom            8bit
219 application/batch-SMTP
220 application/beep+xml
221 application/cals-1840
222 application/cnrp+xml
223 application/commonground
224 application/cpl+xml
225 application/cybercash
226 application/DCA-RFT
227 application/DEC-DX
228 application/dicom
229 application/dvcs
230 application/ecmascript
231 application/EDI-Consent
232 application/EDIFACT
233 application/EDI-X12
234 application/eshop
235 application/font-tdpfr                  pfr
236 application/http
237 application/hyperstudio                 stk
238 application/iges
239 application/index
240 application/index.cmd
241 application/index.obj
242 application/index.response
243 application/index.vnd
244 application/iotp
245 application/ipp
246 application/isup
247 application/json                json                            8bit
248 application/javascript          js                              8bit
249 application/mac-binhex40        hqx                             8bit
250 application/macwriteii
251 application/marc
252 application/mathematica
253 application/mpeg4-generic
254 application/news-message-id
255 application/news-transmission
256 application/ocsp-request        orq
257 application/ocsp-response       ors
258 application/octet-stream bin,dms,lha,lzh,exe,class,ani,pgp,so,dll,dmg   base64
259 application/oda                 oda
260 application/ogg                 ogx
261 application/parityfec
262 application/pdf                 pdf                             base64
263 application/pgp-encrypted                                       7bit
264 application/pgp-keys                                            7bit
265 application/pgp-signature       sig                             base64
266 application/pidf+xml
267 application/pkcs10              p10
268 application/pkcs7-mime          p7m,p7c
269 application/pkcs7-signature     p7s
270 application/pkix-cert           cer
271 application/pkixcmp             pki
272 application/pkix-crl            crl
273 application/pkix-pkipath        pkipath
274 application/postscript          ai,eps,ps                       8bit
275 application/postscript          ps-z                            base64
276 application/prs.alvestrand.titrax-sheet
277 application/prs.cww             cw,cww
278 application/prs.nprend          rnd,rct
279 application/prs.plucker
280 application/qsig
281 application/rdf+xml             rdf                             8bit
282 application/reginfo+xml
283 application/remote-printing
284 application/riscos
285 application/rtf                 rtf                             8bit
286 application/sdp
287 application/set-payment
288 application/set-payment-initiation
289 application/set-registration
290 application/set-registration-initiation
291 application/sgml
292 application/sgml-open-catalog   soc
293 application/sieve               siv
294 application/slate
295 application/smil                smi,smil                        8bit
296 application/timestamp-query
297 application/timestamp-reply
298 application/toolbook            tbk
299 application/tve-trigger
300 application/vemmi
301 application/vnd.3gpp.pic-bw-large       plb
302 application/vnd.3gpp.pic-bw-small       psb
303 application/vnd.3gpp.pic-bw-var         pvb
304 application/vnd.3gpp.sms                sms
305 application/vnd.3M.Post-it-Notes
306 application/vnd.accpac.simply.aso
307 application/vnd.accpac.simply.imp
308 application/vnd.acucobol
309 application/vnd.acucorp         atc,acutc               7bit
310 application/vnd.adobe.xfdf      xfdf
311 application/vnd.aether.imp
312 application/vnd.amiga.amu       ami
313 application/vnd.anser-web-certificate-issue-initiation
314 application/vnd.anser-web-funds-transfer-initiation
315 application/vnd.audiograph
316 application/vnd.blueice.multipass       mpm
317 application/vnd.bmi
318 application/vnd.businessobjects
319 application/vnd.canon-cpdl
320 application/vnd.canon-lips
321 application/vnd.cinderella      cdy
322 application/vnd.claymore
323 application/vnd.commerce-battelle
324 application/vnd.commonspace
325 application/vnd.contact.cmsg
326 application/vnd.cosmocaller     cmc
327 application/vnd.criticaltools.wbs+xml   wbs
328 application/vnd.ctc-posml
329 application/vnd.cups-postscript
330 application/vnd.cups-raster
331 application/vnd.cups-raw
332 application/vnd.curl            curl
333 application/vnd.cybank
334 application/vnd.data-vision.rdz rdz
335 application/vnd.dna
336 application/vnd.dpgraph
337 application/vnd.dreamfactory    dfac
338 application/vnd.dxr
339 application/vnd.ecdis-update
340 application/vnd.ecowin.chart
341 application/vnd.ecowin.filerequest
342 application/vnd.ecowin.fileupdate
343 application/vnd.ecowin.series
344 application/vnd.ecowin.seriesrequest
345 application/vnd.ecowin.seriesupdate
346 application/vnd.enliven
347 application/vnd.epson.esf
348 application/vnd.epson.msf
349 application/vnd.epson.quickanime
350 application/vnd.epson.salt
351 application/vnd.epson.ssf
352 application/vnd.ericsson.quickcall
353 application/vnd.eudora.data
354 application/vnd.fdf
355 application/vnd.ffsns
356 application/vnd.fints
357 application/vnd.FloGraphIt
358 application/vnd.framemaker
359 application/vnd.fsc.weblauch    fsc                     7bit
360 application/vnd.fujitsu.oasys
361 application/vnd.fujitsu.oasys2
362 application/vnd.fujitsu.oasys3
363 application/vnd.fujitsu.oasysgp
364 application/vnd.fujitsu.oasysprs
365 application/vnd.fujixerox.ddd
366 application/vnd.fujixerox.docuworks
367 application/vnd.fujixerox.docuworks.binder
368 application/vnd.fut-misnet
369 application/vnd.genomatix.tuxedo        txd
370 application/vnd.grafeq
371 application/vnd.groove-account
372 application/vnd.groove-help
373 application/vnd.groove-identity-message
374 application/vnd.groove-injector
375 application/vnd.groove-tool-message
376 application/vnd.groove-tool-template
377 application/vnd.groove-vcard
378 application/vnd.hbci            hbci,hbc,kom,upa,pkd,bpd
379 application/vnd.hhe.lesson-player       les
380 application/vnd.hp-HPGL         plt,hpgl
381 application/vnd.hp-hpid
382 application/vnd.hp-hps
383 application/vnd.hp-PCL
384 application/vnd.hp-PCLXL
385 application/vnd.httphone
386 application/vnd.hzn-3d-crossword
387 application/vnd.ibm.afplinedata
388 application/vnd.ibm.electronic-media    emm
389 application/vnd.ibm.MiniPay
390 application/vnd.ibm.modcap
391 application/vnd.ibm.rights-management   irm
392 application/vnd.ibm.secure-container    sc
393 application/vnd.informix-visionary
394 application/vnd.intercon.formnet
395 application/vnd.intertrust.digibox
396 application/vnd.intertrust.nncp
397 application/vnd.intu.qbo
398 application/vnd.intu.qfx
399 application/vnd.ipunplugged.rcprofile   rcprofile
400 application/vnd.irepository.package+xml irp
401 application/vnd.is-xpr
402 application/vnd.japannet-directory-service
403 application/vnd.japannet-jpnstore-wakeup
404 application/vnd.japannet-payment-wakeup
405 application/vnd.japannet-registration
406 application/vnd.japannet-registration-wakeup
407 application/vnd.japannet-setstore-wakeup
408 application/vnd.japannet-verification
409 application/vnd.japannet-verification-wakeup
410 application/vnd.jisp    jisp
411 application/vnd.kde.karbon      karbon
412 application/vnd.kde.kchart      chrt
413 application/vnd.kde.kformula    kfo
414 application/vnd.kde.kivio       flw
415 application/vnd.kde.kontour     kon
416 application/vnd.kde.kpresenter  kpr,kpt
417 application/vnd.kde.kspread     ksp
418 application/vnd.kde.kword       kwd,kwt
419 application/vnd.kenameapp       htke
420 application/vnd.kidspiration    kia
421 application/vnd.Kinar           kne,knp
422 application/vnd.google-earth.kml+xml                    kml     8bit
423 application/vnd.google-earth.kmz                        kmz     8bit
424 application/vnd.koan
425 application/vnd.liberty-request+xml
426 application/vnd.llamagraphics.life-balance.desktop      lbd
427 application/vnd.llamagraphics.life-balance.exchange+xml lbe
428 application/vnd.lotus-1-2-3     wks,123
429 application/vnd.lotus-approach
430 application/vnd.lotus-freelance
431 application/vnd.lotus-notes
432 application/vnd.lotus-organizer
433 application/vnd.lotus-screencam
434 application/vnd.lotus-wordpro
435 application/vnd.mcd             mcd
436 application/vnd.mediastation.cdkey
437 application/vnd.meridian-slingshot
438 application/vnd.mfmp                    mfm
439 application/vnd.micrografx.flo  flo
440 application/vnd.micrografx.igx  igx
441 application/vnd.mif             mif
442 application/vnd.minisoft-hp3000-save
443 application/vnd.mitsubishi.misty-guard.trustweb
444 application/vnd.Mobius.DAF
445 application/vnd.Mobius.DIS
446 application/vnd.Mobius.MBK
447 application/vnd.Mobius.MQY
448 application/vnd.Mobius.MSL
449 application/vnd.Mobius.PLC
450 application/vnd.Mobius.TXF
451 application/vnd.mophun.application      mpn
452 application/vnd.mophun.certificate      mpc
453 application/vnd.motorola.flexsuite
454 application/vnd.motorola.flexsuite.adsi
455 application/vnd.motorola.flexsuite.fis
456 application/vnd.motorola.flexsuite.gotap
457 application/vnd.motorola.flexsuite.kmr
458 application/vnd.motorola.flexsuite.ttc
459 application/vnd.motorola.flexsuite.wem
460 application/vnd.mozilla.xul+xml xul
461 application/vnd.ms-artgalry     cil
462 application/vnd.ms-asf          asf
463 application/vnd.mseq            mseq
464 application/vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb
465 application/vnd.ms-excel.sheet.macroEnabled.12 xlsm
466 application/vnd.ms-excel        xls,xlt                 base64
467 application/vnd.msign
468 application/vnd.ms-lrm          lrm
469 application/vnd.ms-powerpoint   ppt,pps,pot             base64
470 application/vnd.ms-powerpoint.presentation.macroEnabled.12 pptm
471 application/vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm
472 application/vnd.ms-project      mpp                     base64
473 application/vnd.ms-tnef                                 base64
474 application/vnd.ms-word.document.macroEnabled.12 docm
475 application/vnd.ms-word.template.macroEnabled.12 dotm
476 application/vnd.ms-works                                base64
477 application/vnd.ms-wpl          wpl                     base64
478 application/vnd.ms-xpsdocument  xps                     8bit
479 application/vnd.musician
480 application/vnd.music-niff
481 application/vnd.nervana         ent,entity,req,request,bkm,kcm
482 application/vnd.netfpx
483 application/vnd.noblenet-directory
484 application/vnd.noblenet-sealer
485 application/vnd.noblenet-web
486 application/vnd.nokia.radio-preset      rpst
487 application/vnd.nokia.radio-presets     rpss
488 application/vnd.novadigm.EDM
489 application/vnd.novadigm.EDX
490 application/vnd.novadigm.EXT
491 application/vnd.oasis.opendocument.text                 odt
492 application/vnd.oasis.opendocument.text-template        ott
493 application/vnd.oasis.opendocument.text-web             oth
494 application/vnd.oasis.opendocument.text-master          odm
495 application/vnd.oasis.opendocument.graphics             odg
496 application/vnd.oasis.opendocument.graphics-template    otg
497 application/vnd.oasis.opendocument.presentation         odp
498 application/vnd.oasis.opendocument.presentation-template        otp
499 application/vnd.oasis.opendocument.spreadsheet          ods
500 application/vnd.oasis.opendocument.spreadsheet-template ots
501 application/vnd.oasis.opendocument.chart                odc
502 application/vnd.oasis.opendocument.formula              odf
503 application/vnd.oasis.opendocument.database             odb
504 application/vnd.oasis.opendocument.image                odi
505 application/vnd.obn
506 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx quoted-printable
507 application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
508 application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx
509 application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
510 application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
511 application/vnd.osa.netdeploy
512 application/vnd.palm            prc,pdb,pqa,oprc
513 application/vnd.paos.xml
514 application/vnd.pg.format
515 application/vnd.pg.osasli
516 application/vnd.picsel          efif
517 application/vnd.powerbuilder6
518 application/vnd.powerbuilder6-s
519 application/vnd.powerbuilder7
520 application/vnd.powerbuilder75
521 application/vnd.powerbuilder75-s
522 application/vnd.powerbuilder7-s
523 application/vnd.previewsystems.box
524 application/vnd.publishare-delta-tree
525 application/vnd.pvi.ptid1       pti,ptid
526 application/vnd.pwg-multiplexed
527 application/vnd.pwg-xmhtml-print+xml
528 application/vnd.Quark.QuarkXPress       qxd,qxt,qwd,qwt,qxl,qxb         8bit
529 application/vnd.rapid
530 application/vnd.renlearn.rlprint
531 application/vnd.s3sms
532 application/vnd.sealed.doc      sdoc,sdo,s1w
533 application/vnd.sealed.eml      seml,sem
534 application/vnd.sealedmedia.softseal.html       stml,stm,s1h
535 application/vnd.sealedmedia.softseal.pdf        spdf,spd,s1a
536 application/vnd.sealed.mht      smht,smh
537 application/vnd.sealed.net
538 application/vnd.sealed.ppt      sppt,spp,s1p
539 application/vnd.sealed.xls      sxls,sxl,s1e
540 application/vnd.seemail         see
541 application/vnd.shana.informed.formdata
542 application/vnd.shana.informed.formtemplate
543 application/vnd.shana.informed.interchange
544 application/vnd.shana.informed.package
545 application/vnd.smaf                    mmf
546 application/vnd.sss-cod
547 application/vnd.sss-dtf
548 application/vnd.sss-ntf
549 application/vnd.stardivision.chart      sds
550 application/vnd.stardivision.calc       sdc
551 application/vnd.stardivision.writer     sdw
552 application/vnd.stardivision.writer-global      sgl
553 application/vnd.stardivision.draw       sda
554 application/vnd.stardivision.impress    sdd
555 application/vnd.stardivision.math       sdf
556 application/vnd.street-stream
557 application/vnd.sun.xml.calc            sxc
558 application/vnd.sun.xml.calc.template   stc
559 application/vnd.sun.xml.draw            sxd
560 application/vnd.sun.xml.draw.template   std
561 application/vnd.sun.xml.impress         sxi
562 application/vnd.sun.xml.impress.template        sti
563 application/vnd.sun.xml.math            sxm
564 application/vnd.sun.xml.writer          sxw
565 application/vnd.sun.xml.writer.global   sxg
566 application/vnd.sun.xml.writer.template stw
567 application/vnd.sus-calendar    sus,susp
568 application/vnd.svd
569 application/vnd.swiftview-ics
570 application/vnd.syncml.ds.notification
571 application/vnd.triscape.mxs
572 application/vnd.trueapp
573 application/vnd.truedoc
574 application/vnd.ufdl
575 application/vnd.uiq.theme
576 application/vnd.uplanet.alert
577 application/vnd.uplanet.alert-wbxml
578 application/vnd.uplanet.bearer-choice
579 application/vnd.uplanet.bearer-choice-wbxml
580 application/vnd.uplanet.cacheop
581 application/vnd.uplanet.cacheop-wbxml
582 application/vnd.uplanet.channel
583 application/vnd.uplanet.channel-wbxml
584 application/vnd.uplanet.list
585 application/vnd.uplanet.listcmd
586 application/vnd.uplanet.listcmd-wbxml
587 application/vnd.uplanet.list-wbxml
588 application/vnd.uplanet.signal
589 application/vnd.vcx
590 application/vnd.vectorworks
591 application/vnd.vidsoft.vidconference   vsc             8bit
592 application/vnd.visionary               vis
593 application/vnd.visio                   vsd,vst,vsw,vss
594 application/vnd.vividence.scriptfile
595 application/vnd.vsf
596 application/vnd.wap.sic                 sic
597 application/vnd.wap.slc                 slc
598 application/vnd.wap.wbxml               wbxml
599 application/vnd.wap.wmlc                wmlc
600 application/vnd.wap.wmlscriptc          wmlsc
601 application/vnd.webturbo                wtb
602 application/vnd.wordperfect             wpd
603 application/vnd.wqd                     wqd
604 application/vnd.wrq-hp3000-labelled
605 application/vnd.wt.stf
606 application/vnd.wv.csp+wbxml            wv
607 application/vnd.wv.csp+xml                                      8bit
608 application/vnd.wv.ssp+xml                                      8bit
609 application/vnd.xara
610 application/vnd.xfdl
611 application/vnd.yamaha.hv-dic           hvd
612 application/vnd.yamaha.hv-script        hvs
613 application/vnd.yamaha.hv-voice         hvp
614 application/vnd.yamaha.smaf-audio       saf
615 application/vnd.yamaha.smaf-phrase      spf
616 application/vnd.yellowriver-custom-menu
617 application/watcherinfo+xml             wif
618 application/whoispp-query
619 application/whoispp-response
620 application/wita
621 application/wordperfect5.1      wp5,wp
622 application/x-123               wk
623 application/x-access
624 application/x-bcpio             bcpio
625 application/x-bleeper           bleep                           base64
626 application/x-bzip2             bz2
627 application/x-cdlink            vcd
628 application/x-chess-pgn         pgn
629 application/x-clariscad
630 application/x-compress          z,Z                             base64
631 application/x-cpio              cpio                            base64
632 application/x-csh               csh                             8bit
633 application/x-cu-seeme          csm,cu
634 application/x-debian-package    deb
635 application/x-director          dcr,dir,dxr
636 application/x-drafting
637 application/x-dvi               dvi                             base64
638 application/x-dxf
639 application/x-excel
640 application/x-fractals
641 application/x-futuresplash      spl
642 application/x-ghostview
643 application/x-gtar              gtar,tgz,tbz2,tbz               base64
644 application/x-gunzip
645 application/x-gzip              gz                              base64
646 application/x-hdf               hdf
647 application/x-hep               hep
648 application/x-html+ruby         rhtml                           8bit
649 application/xhtml+xml           xhtml                           8bit
650 application/x-httpd-php         phtml,pht,php                   8bit
651 application/x-ica               ica
652 application/x-ideas
653 application/x-imagemap          imagemap,imap                   8bit
654 application/x-java-archive      jar
655 application/x-java-jnlp-file    jnlp
656 application/x-java-serialized-object    ser
657 application/x-java-vm           class
658 application/x-koan              skp,skd,skt,skm
659 application/x-latex             latex                           8bit
660 application/x-lotus-123
661 application/x-mac-compactpro    cpt
662 application/x-maker             frm,maker,frame,fm,fb,book,fbdoc
663 application/x-mathcad   # mcd, but there is also vnd.mcd
664 application/x-mif               mif
665 application/xml                 xml,xsl                         8bit
666 application/xml-dtd             dtd                             8bit
667 application/xml-external-parsed-entity
668 application/x-msaccess                  mda,mdb,mde,mdf         base64
669 application/x-msdos-program     cmd,bat                         8bit
670 application/x-msdos-program     com,exe                         base64
671 application/x-msdownload                                        base64
672 application/x-msword            doc,dot,wrd                     base64
673 application/x-netcdf            nc,cdf
674 application/x-ns-proxy-autoconfig       pac
675 application/x-pagemaker         pm5,pt5,pm
676 application/x-perl              pl,pm                           8bit
677 application/x-pgp
678 application/x-python            py                              8bit
679 application/x-quicktimeplayer   qtl
680 application/x-rar-compressed    rar                             base64
681 application/x-remote_printing
682 application/x-ruby              rb,rbw                          8bit
683 application/x-set
684 application/x-shar              shar                            8bit
685 application/x-shockwave-flash   swf
686 application/x-sh                sh                              8bit
687 application/xslt+xml            xslt                            8bit
688 application/x-SLA
689 application/x-solids
690 application/x-spss              sav,sbs,sps,spo,spp
691 application/x-stuffit           sit                             base64
692 application/x-sv4cpio           sv4cpio                         base64
693 application/x-sv4crc            sv4crc                          base64
694 application/x-tar               tar                             base64
695 application/x-tcl               tcl                             8bit
696 application/x-texinfo           texinfo,texi                    8bit
697 application/x-tex               tex                             8bit
698 application/x-troff-man         man                             8bit
699 application/x-troff-me          me
700 application/x-troff-ms          ms
701 application/x-troff             t,tr,roff                       8bit
702 application/x-ustar             ustar                           base64
703 application/x-vda
704 application/x-VMSBACKUP         bck                     base64
705 application/x-wais-source       src
706 application/x-Wingz             wz
707 application/x-word                                                      base64
708 application/x-wordperfect6.1    wp6
709 application/x-x400-bp
710 application/x-x509-ca-cert      crt                             base64
711 application/zip                 zip                             base64
712 audio/32kadpcm
713 audio/3gpp
714 audio/3gpp2
715 audio/AMR                       amr                             base64
716 audio/AMR-WB                    awb                             base64
717 audio/basic                     au,snd                          base64
718 audio/CN
719 audio/DAT12
720 audio/dsr-es201108
721 audio/DVI4
722 audio/EVRC0
723 audio/EVRC                      evc
724 audio/EVRC-QCP
725 audio/G722
726 audio/G.722.1
727 audio/G723
728 audio/G726-16
729 audio/G726-24
730 audio/G726-32
731 audio/G726-40
732 audio/G728
733 audio/G729
734 audio/G729D
735 audio/G729E
736 audio/GSM
737 audio/GSM-EFR
738 audio/L16                       l16
739 audio/L20
740 audio/L24
741 audio/L8
742 audio/LPC
743 audio/MP4A-LATM
744 audio/MPA
745 audio/mpa-robust
746 audio/mpeg4-generic
747 audio/mpeg                      mpga,mp2,mp3                    base64
748 audio/ogg                       ogg,oga
749 audio/parityfec
750 audio/PCMA
751 audio/PCMU
752 audio/prs.sid                   sid,psid
753 audio/QCELP                     qcp
754 audio/RED
755 audio/SMV0
756 audio/SMV-QCP
757 audio/SMV                       smv
758 audio/telephone-event
759 audio/tone
760 audio/VDVI
761 audio/vnd.3gpp.iufp
762 audio/vnd.audiokoz              koz
763 audio/vnd.cisco.nse
764 audio/vnd.cns.anp1
765 audio/vnd.cns.inf1
766 audio/vnd.digital-winds         eol                     7bit
767 audio/vnd.everad.plj            plj
768 audio/vnd.lucent.voice          lvp
769 audio/vnd.nokia.mobile-xmf      mxmf
770 audio/vnd.nortel.vbk            vbk
771 audio/vnd.nuera.ecelp4800       ecelp4800
772 audio/vnd.nuera.ecelp7470       ecelp7470
773 audio/vnd.nuera.ecelp9600       ecelp9600
774 audio/vnd.octel.sbc
775 audio/vnd.qcelp
776 audio/vnd.rhetorex.32kadpcm
777 audio/vnd.sealedmedia.softseal.mpeg     smp3,smp,s1m
778 audio/vnd.vmx.cvsd
779 audio/x-aiff                    aif,aifc,aiff                   base64
780 audio/x-midi                    mid,midi,kar                    base64
781 audio/x-pn-realaudio-plugin     rpm
782 audio/x-pn-realaudio            rm,ram                          base64
783 audio/x-realaudio               ra                              base64
784 audio/x-wav                     wav                             base64
785 chemical/x-pdb                  pdb
786 chemical/x-xyz                  xyz
787 drawing/dwf                     dwf
788 image/cgm
789 image/g3fax
790 image/gif                       gif                             base64
791 image/ief                       ief                             base64
792 image/jp2                       jp2,jpg2                        base64
793 image/jpeg                      jpeg,jpg,jpe                    base64
794 image/jpm                       jpm,jpgm
795 image/jpx                       jpf,jpx
796 image/naplps
797 image/png                       png                             base64
798 image/prs.btif
799 image/prs.pti
800 image/svg+xml                   svg                             8bit
801 image/t38
802 image/targa                     tga
803 image/tiff-fx
804 image/tiff                      tiff,tif                        base64
805 image/vnd.cns.inf2
806 image/vnd.dgn                   dgn
807 image/vnd.djvu                  djvu,djv
808 image/vnd.dwg                   dwg
809 image/vnd.dxf
810 image/vnd.fastbidsheet
811 image/vnd.fpx
812 image/vnd.fst
813 image/vnd.fujixerox.edmics-mmr
814 image/vnd.fujixerox.edmics-rlc
815 image/vnd.glocalgraphics.pgb            pgb
816 image/vnd.microsoft.icon                ico
817 image/vnd.mix
818 image/vnd.ms-modi                       mdi
819 image/vnd.net-fpx
820 image/vnd.sealedmedia.softseal.gif      sgif,sgi,s1g
821 image/vnd.sealedmedia.softseal.jpg      sjpg,sjp,s1j
822 image/vnd.sealed.png                    spng,spn,s1n
823 image/vnd.svf
824 image/vnd.wap.wbmp                      wbmp
825 image/vnd.xiff
826 image/x-bmp                     bmp
827 image/x-cmu-raster                      ras
828 image/x-portable-anymap                 pnm                             base64
829 image/x-portable-bitmap                 pbm                             base64
830 image/x-portable-graymap                pgm                             base64
831 image/x-portable-pixmap                 ppm                             base64
832 image/x-rgb                             rgb                             base64
833 image/x-xbitmap                         xbm                             7bit
834 image/x-xpixmap                         xpm                             8bit
835 image/x-xwindowdump                     xwd                             base64
836 message/CPIM
837 message/delivery-status
838 message/disposition-notification
839 message/external-body                                                   8bit
840 message/http
841 message/news                                                            8bit
842 message/partial                                                         8bit
843 message/rfc822                          eml                             8bit
844 message/s-http
845 message/sip
846 message/sipfrag
847 model/iges                              igs,iges
848 model/mesh                              msh,mesh,silo
849 model/vnd.dwf
850 model/vnd.flatland.3dml
851 model/vnd.gdl
852 model/vnd.gs-gdl
853 model/vnd.gtw
854 model/vnd.mts
855 model/vnd.parasolid.transmit.binary     x_b,xmt_bin
856 model/vnd.parasolid.transmit.text       x_t,xmt_txt             quoted-printable
857 model/vnd.vtu
858 model/vrml                              wrl,vrml
859 multipart/alternative                                                   8bit
860 multipart/appledouble                                                   8bit
861 multipart/byteranges
862 multipart/digest                                                        8bit
863 multipart/encrypted
864 multipart/form-data
865 multipart/header-set
866 multipart/mixed                                                         8bit
867 multipart/parallel                                                      8bit
868 multipart/related
869 multipart/report
870 multipart/signed
871 multipart/voice-message
872 multipart/x-gzip
873 multipart/x-mixed-replace
874 multipart/x-tar
875 multipart/x-ustar
876 multipart/x-www-form-urlencoded
877 multipart/x-zip
878 text/calendar
879 text/csv                                csv                             8bit
880 text/comma-separated-values                                             8bit
881 text/css                                css                             8bit
882 text/directory
883 text/enriched
884 text/html                               html,htm,htmlx,shtml,htx        8bit
885 text/parityfec
886 text/plain                      txt,asc,c,cc,h,hh,cpp,hpp,dat,hlp       8bit
887 text/prs.fallenstein.rst                rst
888 text/prs.lines.tag
889 text/rfc822-headers
890 text/richtext                           rtx                             8bit
891 text/rtf                                rtf                             8bit
892 text/sgml                               sgml,sgm
893 text/t140
894 text/tab-separated-values               tsv
895 text/uri-list
896 text/vnd.abc
897 text/vnd.curl
898 text/vnd.DMClientScript
899 text/vnd.flatland.3dml
900 text/vnd.fly
901 text/vnd.fmi.flexstor
902 text/vnd.in3d.3dml
903 text/vnd.in3d.spot
904 text/vnd.IPTC.NewsML
905 text/vnd.IPTC.NITF
906 text/vnd.latex-z
907 text/vnd.motorola.reflex
908 text/vnd.ms-mediapackage
909 text/vnd.net2phone.commcenter.command   ccc
910 text/vnd.sun.j2me.app-descriptor        jad                             8bit
911 text/vnd.wap.si                         si
912 text/vnd.wap.sl                         sl
913 text/vnd.wap.wmlscript                  wmls
914 text/vnd.wap.wml                        wml
915 text/xml-external-parsed-entity
916 text/xml
917 text/x-component                        htc                             8bit
918 text/x-setext                           etx
919 text/x-sgml                             sgml,sgm                        8bit
920 text/x-vCalendar                        vcs                             8bit
921 text/x-vCard                            vcf                             8bit
922 video/3gpp                              3gp,3gpp                        base64
923 video/3gpp2                             3g2,3gpp2                       base64
924 video/BMPEG
925 video/BT656
926 video/CelB
927 video/dl                                dl                              base64
928 video/DV
929 video/gl                                gl                              base64
930 video/H261
931 video/H263
932 video/H263-1998
933 video/H263-2000
934 video/JPEG
935 video/mj2                               mj2,mjp2
936 video/MP1S
937 video/MP2P
938 video/MP2T
939 video/MP4V-ES
940 video/mpeg4-generic
941 video/mpeg                              mp2,mpe,mpeg,mpg                base64
942 video/MPV
943 video/nv
944 video/ogg                               ogv
945 video/parityfec
946 video/pointer
947 video/quicktime                         qt,mov                          base64
948 video/SMPTE292M
949 video/vnd.fvt                           fvt
950 video/vnd.motorola.video
951 video/vnd.motorola.videop
952 video/vnd.mpegurl                       mxu,m4u                         8bit
953 video/vnd.nokia.interleaved-multimedia  nim
954 video/vnd.objectvideo                   mp4
955 video/vnd.sealedmedia.softseal.mov      smov,smo,s1q
956 video/vnd.sealed.mpeg1                  s11
957 video/vnd.sealed.mpeg4                  smpg,s14
958 video/vnd.sealed.swf                    sswf,ssw
959 video/vnd.vivo                          viv,vivo
960 video/x-fli                             fli                             base64
961 video/x-flv                             flv                             base64
962 video/x-ms-asf                          asf,asx
963 video/x-ms-wmv                          wmv
964 video/x-msvideo                         avi                             base64
965 video/x-sgi-movie                       movie                           base64
966 x-chemical/x-pdb                        pdb
967 x-chemical/x-xyz                        xyz
968 x-conference/x-cooltalk                 ice
969 x-drawing/dwf                           dwf
970 x-world/x-vrml                          wrl,vrml
971
972 # Exceptions
973
974 vms:text/plain                          doc                             8bit
975 mac:application/x-macbase64             bin
976
977 # IE6 bug
978 image/pjpeg                                                             base64
979
980 __MIMETYPES__
981
982 1;