ID:               38235
 Comment by:       sonne at gaskanalen dot dk
 Reported By:      tony at marston-home dot demon dot co dot uk
 Status:           Open
 Bug Type:         Unknown/Other Function
 Operating System: Windows XP
 PHP Version:      5CVS-2006-07-27 (CVS)
 New Comment:

When using a WinXp with 5.2 i get errors when loading the magic.mime
file 

------ just a snippet
[21-Dec-2006 18:42:50] PHP Warning:  PHP Startup: :
(C:\wamp\php\extras\magic.mime:360) 'HP48 text' is not a valid
mimetype, entry skipped in Unknown on line 0
[21-Dec-2006 18:42:50] PHP Warning:  PHP Startup: :
(C:\wamp\php\extras\magic.mime:361) 'hp200 (68010) BSD' is not a valid
mimetype, entry skipped in Unknown on line 0
[21-Dec-2006 18:42:50] PHP Warning:  PHP Startup: :
(C:\wamp\php\extras\magic.mime:362) 'hp300 (68020+68881) BSD' is not a
valid mimetype, entry skipped in Unknown on line 0
[21-Dec-2006 18:42:50] PHP Warning:  PHP Startup: :
(C:\wamp\php\extras\magic.mime:363) '370 XA sysV executable ' is not a
valid mimetype, entry skipped in Unknown on line 0
[21-Dec-2006 18:42:50] PHP Warning:  PHP Startup: :
(C:\wamp\php\extras\magic.mime:364) '370 XA sysV pure executable ' is
not a valid mimetype, entry skipped in Unknown on line 0


I tryed downloading the zip file with windows binaries both from lates
5 and 4 series and use thoose magic.mime, they don't work

i also tryed jusing the magic file from apache, i don't get any errors
in the log with this one, but the functions both mime_content_type and
finfo_open dosnøt work with this either.


Previous Comments:
------------------------------------------------------------------------

[2006-07-30 06:15:17] php-user at private dot lan

Oops, it didn't work right. Just replace the "&", "<" and ">"
with the "&", "<" and ">", respectively.

------------------------------------------------------------------------

[2006-07-30 06:12:10] php-user at private dot lan

I have the same problem. I did note from the documentation that:

"Note:  This extension is not capable of handling the fully decorated
magic file that generally comes with standard Linux distro's and is
supposed to be used with recent versions of file command."

The bundled magic.mime file looks like it's the fully decorated
version, which isn't supposed to work with mime_magic. Perhaps someone
made a boo-boo when they bundled the zip file?

Anyhow, a user comment on the docs page said to use the magic file from
Apache, which I tried.. And it eliminated all the errors. I have NOT
tested to make sure it works with the mime type detection functions
yet.. (I was trying to clean up my apache errors log file, not fix
soimething in php. Yet. ;-))

Here's the mime magic file from my Apache-2.0 (I hope this shows up
correctly!):

# Magic data for mod_mime_magic Apache module (originally for file(1)
command)
# The module is described in /manual/mod/mod_mime_magic.html
#
# The format is 4-5 columns:
#    Column #1: byte number to begin checking from, "&gt;" indicates
continuation
#    Column #2: type of data to match
#    Column #3: contents of data to match
#    Column #4: MIME type of result
#    Column #5: MIME encoding of result (optional)

#------------------------------------------------------------------------------
# Localstuff:  file(1) magic for locally observed files
# Add any locally observed files here.

#------------------------------------------------------------------------------
# end local stuff
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Java

0       short           0xcafe
&gt;2   short           0xbabe          application/java

#------------------------------------------------------------------------------
# audio:  file(1) magic for sound formats
#
# from Jan Nicolai Langfeldt &lt;[EMAIL PROTECTED]&gt;,
#

# Sun/NeXT audio data
0       string          .snd
&gt;12  belong          1               audio/basic
&gt;12  belong          2               audio/basic
&gt;12  belong          3               audio/basic
&gt;12  belong          4               audio/basic
&gt;12  belong          5               audio/basic
&gt;12  belong          6               audio/basic
&gt;12  belong          7               audio/basic

&gt;12  belong          23              audio/x-adpcm

# DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT
format
# that uses little-endian encoding and has a different magic number
# (0x0064732E in little-endian encoding).
0       lelong          0x0064732E      
&gt;12  lelong          1               audio/x-dec-basic
&gt;12  lelong          2               audio/x-dec-basic
&gt;12  lelong          3               audio/x-dec-basic
&gt;12  lelong          4               audio/x-dec-basic
&gt;12  lelong          5               audio/x-dec-basic
&gt;12  lelong          6               audio/x-dec-basic
&gt;12  lelong          7               audio/x-dec-basic
#                                       compressed (G.721 ADPCM)
&gt;12  lelong          23              audio/x-dec-adpcm

# Bytes 0-3 of AIFF, AIFF-C, &amp; 8SVX audio files are "FORM"
#                                       AIFF audio data
8       string          AIFF            audio/x-aiff    
#                                       AIFF-C audio data
8       string          AIFC            audio/x-aiff    
#                                       IFF/8SVX audio data
8       string          8SVX            audio/x-aiff    

# Creative Labs AUDIO stuff
#                                       Standard MIDI data
0       string  MThd                    audio/unknown   
#&gt;9  byte    &gt;0                   (format %d)
#&gt;11 byte    &gt;1                   using %d channels
#                                       Creative Music (CMF) data
0       string  CTMF                    audio/unknown   
#                                       SoundBlaster instrument data
0       string  SBI                     audio/unknown   
#                                       Creative Labs voice data
0       string  Creative\ Voice\ File   audio/unknown   
## is this next line right?  it came this way...
#&gt;19 byte    0x1A
#&gt;23 byte    &gt;0                   - version %d
#&gt;22 byte    &gt;0                   \b.%d

# [GRR 950115:  is this also Creative Labs?  Guessing that first line
#  should be string instead of unknown-endian long...]
#0      long            0x4e54524b      MultiTrack sound data
#0      string          NTRK            MultiTrack sound data
#&gt;4  long            x               - version %ld

# Microsoft WAVE format (*.wav)
# [GRR 950115:  probably all of the shorts and longs should be
leshort/lelong]
#                                       Microsoft RIFF
0       string          RIFF            audio/unknown
#                                       - WAVE format
&gt;8   string          WAVE            audio/x-wav
# MPEG audio.
0   beshort&amp;0xfff0  0xfff0  audio/mpeg
# C64 SID Music files, from Linus Walleij &lt;[EMAIL PROTECTED]&gt;
0   string      PSID        audio/prs.sid

#------------------------------------------------------------------------------
# c-lang:  file(1) magic for C programs or various scripts
#

# XPM icons (Greg Roelofs, [EMAIL PROTECTED])
# ideally should go into "images", but entries below would tag XPM as C
source
0       string          /*\ XPM         image/x-xbm     7bit

# this first will upset you if you're a PL/1 shop... (are there any
left?)
# in which case rm it; ascmagic will catch real C programs
#                                       C or REXX program text
0       string          /*              text/plain
#                                       C++ program text
0       string          //              text/plain

#------------------------------------------------------------------------------
# compress:  file(1) magic for pure-compression formats (no archives)
#
# compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba,
whap, etc.
#
# Formats for various forms of compressed data
# Formats for "compress" proper have been moved into "compress.c",
# because it tries to uncompress it to figure out what's inside.

# standard unix compress
0       string          \037\235        application/octet-stream        
x-compress

# gzip (GNU zip, not to be confused with [Info-ZIP/PKWARE] zip
archiver)
0       string          \037\213       
application/octet-stream        x-gzip

# According to gzip.h, this is the correct byte order for packed data.
0       string          \037\036        application/octet-stream
#
# This magic number is byte-order-independent.
#
0       short           017437          application/octet-stream

# XXX - why *two* entries for "compacted data", one of which is
# byte-order independent, and one of which is byte-order dependent?
#
# compacted data
0       short           0x1fff          application/octet-stream
0       string          \377\037        application/octet-stream
# huf output
0       short           0145405         application/octet-stream

# Squeeze and Crunch...
# These numbers were gleaned from the Unix versions of the programs to
# handle these formats.  Note that I can only uncrunch, not crunch,
and
# I didn't have a crunched file handy, so the crunch number is
untested.
#                               Keith Waclena &lt;[EMAIL PROTECTED]&gt;
#0      leshort         0x76FF          squeezed data (CP/M, DOS)
#0      leshort         0x76FE          crunched data (CP/M, DOS)

# Freeze
#0      string          \037\237        Frozen file 2.1
#0      string          \037\236        Frozen file 1.0 (or gzip 0.5)

# lzh?
#0      string          \037\240        LZH compressed data

#------------------------------------------------------------------------------
# frame:  file(1) magic for FrameMaker files
#
# This stuff came on a FrameMaker demo tape, most of which is
# copyright, but this file is "published" as witness the following:
#
0       string          \&lt;MakerFile  application/x-frame
0       string          \&lt;MIFFile    application/x-frame
0       string          \&lt;MakerDictionary    application/x-frame
0       string          \&lt;MakerScreenFon     application/x-frame
0       string          \&lt;MML                application/x-frame
0       string          \&lt;Book               application/x-frame
0       string          \&lt;Maker              application/x-frame

#------------------------------------------------------------------------------
# html:  file(1) magic for HTML (HyperText Markup Language) docs
#
# from Daniel Quinlan &lt;[EMAIL PROTECTED]&gt;
# and Anna Shergold &lt;[EMAIL PROTECTED]&gt;
#
0   string      \&lt;!DOCTYPE\ HTML    text/html
0   string      \&lt;!doctype\ html    text/html
0   string      \&lt;HEAD      text/html
0   string      \&lt;head      text/html
0   string      \&lt;TITLE     text/html
0   string      \&lt;title     text/html
0   string      \&lt;html      text/html
0   string      \&lt;HTML      text/html
0   string      \&lt;!--       text/html
0   string      \&lt;h1        text/html
0   string      \&lt;H1        text/html

# XML eXtensible Markup Language, from Linus Walleij
&lt;[EMAIL PROTECTED]&gt;
0   string      \&lt;?xml      text/xml

#------------------------------------------------------------------------------
# images:  file(1) magic for image formats (see also "c-lang" for XPM
bitmaps)
#
# originally from [EMAIL PROTECTED] (Jef Poskanzer),
# additions by [EMAIL PROTECTED] as well as others. Jan also suggested
# merging several one- and two-line files into here.
#
# XXX - byte order for GIF and TIFF fields?
# [GRR:  TIFF allows both byte orders; GIF is probably little-endian]
#

# [GRR:  what the hell is this doing in here?]
#0      string          xbtoa           btoa'd file

# PBMPLUS
#                                       PBM file
0       string          P1              image/x-portable-bitmap 7bit
#                                       PGM file
0       string          P2              image/x-portable-greymap        7bit
#                                       PPM file
0       string          P3              image/x-portable-pixmap 7bit
#                                       PBM "rawbits" file
0       string          P4              image/x-portable-bitmap
#                                       PGM "rawbits" file
0       string          P5              image/x-portable-greymap
#                                       PPM "rawbits" file
0       string          P6              image/x-portable-pixmap

# NIFF (Navy Interchange File Format, a modification of TIFF)
# [GRR:  this *must* go before TIFF]
0       string          IIN1            image/x-niff

# TIFF and friends
#                                       TIFF file, big-endian
0       string          MM              image/tiff
#                                       TIFF file, little-endian
0       string          II              image/tiff

# possible GIF replacements; none yet released!
# (Greg Roelofs, [EMAIL PROTECTED])
#
# GRR 950115:  this was mine ("Zip GIF"):
#                                       ZIF image (GIF+deflate alpha)
0       string          GIF94z          image/unknown
#
# GRR 950115:  this is Jeremy Wohl's Free Graphics Format (better):
#                                       FGF image (GIF+deflate beta)
0       string          FGF95a          image/unknown
#
# GRR 950115:  this is Thomas Boutell's Portable Bitmap Format
proposal
# (best; not yet implemented):
#                                       PBF image (deflate compression)
0       string          PBF             image/unknown

# GIF
0       string          GIF             image/gif

# JPEG images
0       beshort         0xffd8          image/jpeg

# PC bitmaps (OS/2, Windoze BMP files)  (Greg Roelofs,
[EMAIL PROTECTED])
0       string          BM              image/bmp
#&gt;14 byte            12              (OS/2 1.x format)
#&gt;14 byte            64              (OS/2 2.x format)
#&gt;14 byte            40              (Windows 3.x format)
#0      string          IC              icon
#0      string          PI              pointer
#0      string          CI              color icon
#0      string          CP              color pointer
#0      string          BA              bitmap array


#------------------------------------------------------------------------------
# lisp:  file(1) magic for lisp programs
#
# various lisp types, from Daniel Quinlan ([EMAIL PROTECTED])
0       string  ;;                      text/plain      8bit
# Emacs 18 - this is always correct, but not very magical.
0       string  \012(                   application/x-elc
# Emacs 19
0       string  ;ELC\023\000\000\000    application/x-elc

#------------------------------------------------------------------------------
# mail.news:  file(1) magic for mail and news
#
# There are tests to ascmagic.c to cope with mail and news.
0       string          Relay-Version:  message/rfc822  7bit
0       string          #!\ rnews       message/rfc822  7bit
0       string          N#!\ rnews      message/rfc822  7bit
0       string          Forward\ to     message/rfc822  7bit
0       string          Pipe\ to        message/rfc822  7bit
0       string          Return-Path:    message/rfc822  7bit
0       string          Path:           message/news    8bit
0       string          Xref:           message/news    8bit
0       string          From:           message/rfc822  7bit
0       string          Article         message/news    8bit
#------------------------------------------------------------------------------
# msword: file(1) magic for MS Word files
#
# Contributor claims:
# Reversed-engineered MS Word magic numbers
#

0       string          \376\067\0\043                  application/msword
0       string          \333\245-\0\0\0                 application/msword

# disable this one because it applies also to other
# Office/OLE documents for which msword is not correct. See PR#2608.
#0      string          \320\317\021\340\241\261        application/msword



#------------------------------------------------------------------------------
# printer:  file(1) magic for printer-formatted files
#

# PostScript
0       string          %!              application/postscript
0       string          \004%!          application/postscript

# Acrobat
# (due to [EMAIL PROTECTED])
0       string          %PDF-           application/pdf

#------------------------------------------------------------------------------
# sc:  file(1) magic for "sc" spreadsheet
#
38      string          Spreadsheet     application/x-sc

#------------------------------------------------------------------------------
# tex:  file(1) magic for TeX files
#
# XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
#
# From &lt;[EMAIL PROTECTED]&gt;

# Although we may know the offset of certain text fields in TeX DVI
# and font files, we can't use them reliably because they are not
# zero terminated. [but we do anyway, christos]
0       string          \367\002        application/x-dvi
#0      string          \367\203        TeX generic font data
#0      string          \367\131        TeX packed font data
#0      string          \367\312        TeX virtual font data
#0      string          This\ is\ TeX,  TeX transcript text     
#0      string          This\ is\ METAFONT,     METAFONT transcript text

# There is no way to detect TeX Font Metric (*.tfm) files without
# breaking them apart and reading the data.  The following patterns
# match most *.tfm files generated by METAFONT or afm2tfm.
#2      string          \000\021        TeX font metric data
#2      string          \000\022        TeX font metric data
#&gt;34 string          &gt;\0          (%s)

# Texinfo and GNU Info, from Daniel Quinlan ([EMAIL PROTECTED])
#0      string          \\input\ texinfo        Texinfo source text
#0      string          This\ is\ Info\ file    GNU Info text

# correct TeX magic for Linux (and maybe more)
# from Peter Tobias ([EMAIL PROTECTED])
#
0       leshort         0x02f7          application/x-dvi

# RTF - Rich Text Format
0       string          {\\rtf          application/rtf

#------------------------------------------------------------------------------
# animation:  file(1) magic for animation/movie formats
#
# animation formats, originally from [EMAIL PROTECTED] (VaX#n8)
#                                               MPEG file
0       string          \000\000\001\263        video/mpeg
#
# The contributor claims:
#   I couldn't find a real magic number for these, however, this
#   -appears- to work.  Note that it might catch other files, too,
#   so BE CAREFUL!
#
# Note that title and author appear in the two 20-byte chunks
# at decimal offsets 2 and 22, respectively, but they are XOR'ed with
# 255 (hex FF)! DL format SUCKS BIG ROCKS.
#
#                                               DL file version 1 , medium 
format (160x100, 4 images/screen)
0       byte            1                       video/unknown
0       byte            2                       video/unknown
# Quicktime video, from Linus Walleij &lt;[EMAIL PROTECTED]&gt;
# from Apple quicktime file format documentation.
4   string      moov        video/quicktime
4   string      mdat        video/quicktime

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/38235

-- 
Edit this bug report at http://bugs.php.net/?id=38235&edit=1

Reply via email to