2009-08-30 21:55  moritz

	* [r16537] NEWS, doc/ezstream.1.in.in, src/ezstream.c:
	  Teach ezstream a different mode of operation, as a one-shot line
	  shuffling tool.

2009-08-30 21:46  moritz

	* [r16536] src/ezstream.h, src/playlist.c:
	  Support reading playlists from standard input.

2009-08-30 20:34  moritz

	* [r16535] examples/Makefile.am,
	  examples/ezstream-file_template.xml:
	  Add an example template configuration for ezstream-file.sh(1).

2009-08-30 19:41  moritz

	* [r16534] src/ezstream-file.sh.in:
	  Move the verbose error check where it belongs.

2009-08-30 19:38  moritz

	* [r16533] COPYING, doc/ezstream-file.sh.1.in.in,
	  doc/ezstream.1.in.in:
	  Some licensing blah-blah and RCS IDs.

2009-08-30 18:28  moritz

	* [r16532] NEWS:
	  Merge two related changes into one bullet point, and set release
	  date to tomorrow.

2009-08-30 18:23  moritz

	* [r16531] src/ezstream-file.sh.in:
	  Do not quote $EZSTREAM, which breaks paths with whitespace but
	  allows to smuggle in default command line arguments.

2009-08-30 18:22  moritz

	* [r16530] doc/ezstream-file.sh.1.in.in:
	  Tweak.

2009-08-30 12:49  moritz

	* [r16529] NEWS, configure.in, doc/Makefile.am,
	  doc/ezstream-file.sh.1.in.in, doc/ezstream.1.in,
	  doc/ezstream.1.in.in, src/Makefile.am, src/ezstream-file.sh.in:
	  Add new wrapper/convenience script ezstream-file.sh -- generates
	  ezstreams on- the-fly.

2009-08-29 09:37  moritz

	* [r16528] src/ezstream.c:
	  Remove pointless and (at this point) irritating warning message.

2009-08-29 09:36  moritz

	* [r16527] NEWS, src/ezstream.c:
	  The original reason to abort ezstream when running into problems
	  opening a media file was to prevent a very verbose infinite loop
	  (e.g. when accidentially playing an outdated playlist.) Bring
	  that back by aborting after 100 subsequent errors.

2009-08-29 09:14  moritz

	* [r16526] NEWS, src/playlist.c:
	  ... also fix ezstream in this regard: No need to complain when
	  receiving such an empty line, and not receiving any output should
	  not be a fatal error. Consider the latter to be
	  "end-of-playlist", too.

2009-08-29 09:12  moritz

	* [r16525] examples/playlist-logger.sh:
	  Listen to my own documentation: the end-of-playlist case is
	  indicated by an empty line. But ...

2009-08-28 15:55  moritz

	* [r16523] NEWS, examples/Makefile.am, examples/meta.sh,
	  examples/play.sh, examples/playlist-logger.sh:
	  Add a more fancy playlist script.

2009-08-22 10:03  moritz

	* [r16497] NEWS, src/ezstream.c:
	  #1585: Continue when openResource() fails.

2009-08-01 18:44  moritz

	* [r16388] configure.in, win32/config.h:
	  Post-release version bump.

2009-08-01 16:36  moritz

	* [r16383] ChangeLog:
	  Sync.

2009-08-01 16:32  moritz

	* [r16382] m4/taglib.m4:
	  Fix copy+paste'o.

2009-08-01 16:15  moritz

	* [r16381] README:
	  Almost everyone chooses the pkg-config(1) way and installs
	  shout.pc. Document how to configure ezstream on differently
	  enabled systems. ... heh, PC talk is so deliciously nasty.

2009-08-01 16:08  moritz

	* [r16380] m4/libshout.m4:
	  Give it a chance to link statically.

2009-08-01 16:08  moritz

	* [r16379] m4/taglib.m4:
	  Check for taglib_c in the libtag_c test.

2009-08-01 16:01  moritz

	* [r16378] m4/libxml2.m4:
	  Don't use AC_RUN_IFELSE (breaks cross-compiles.)

2009-08-01 15:28  moritz

	* [r16377] m4/libshout.m4:
	  Do not rely on a succesful pkg-config(1) check for libshout2, as
	  there are still some systems where only shout-config gets
	  installed (NetBSD for example.)

2009-08-01 15:26  moritz

	* [r16376] autogen.sh:
	  Fix for non-libtool project.

2009-08-01 13:52  moritz

	* [r16375] autogen.sh:
	  Update to what I use everywhere else now.

2009-08-01 13:50  moritz

	* [r16374] NEWS:
	  Today is (the real) release day.

2009-08-01 13:46  moritz

	* [r16373] m4/ccflags.m4, m4/libshout.m4, m4/libvorbis.m4,
	  m4/libxml2.m4, m4/taglib.m4:
	  Update m4 macros to latest version.

2009-08-01 10:54  moritz

	* [r16372] win32/Makefile.am, win32/tfile.cpp:
	  Add and redistribute tfile.cpp, which I needed to modify in order
	  to build Taglib 1.4 on Windows. This should also satisfy the
	  LGPL.

2009-08-01 10:51  moritz

	* [r16371] win32/Makefile.am:
	  Distribute taglib project files.

2009-08-01 10:49  moritz

	* [r16370] win32/ezstream.sln, win32/ezstream.vcproj,
	  win32/taglib.vcproj, win32/taglib_c.vcproj:
	  Downgrade the Taglib project files to v1.4 -- this actually works
	  now, so hook it up to ezstream.

2009-08-01 09:04  moritz

	* [r16369] win32/taglib.vcproj, win32/taglib_c.vcproj:
	  Make these look like the other project files; maybe it helps with
	  the linking issue (to be tested later.)

2009-07-26 10:52  moritz

	* [r16337] configure.in:
	  Whitespace removal for consistency with other projects.

2009-07-22 20:19  moritz

	* [r16319] NEWS, doc/ezstream.1.in, examples/ezstream_mp3.xml,
	  examples/ezstream_vorbis.xml, src/configfile.c, src/configfile.h,
	  src/util.c:
	  Akos Veres suggested that ezstream should be able to set the
	  login username, and I concur.

2009-07-17 22:52  moritz

	* [r16296] win32/ezstream.sln:
	  Remove taglib projects again. I failed to build a taglib that can
	  be coerced into linking statically with ezstream. *sigh* ...
	  hours of frustrating trial and error for nothing.
	  
	  Without a bright idea real soon, the next release -- whose sole
	  purpose is to fix TagLib support on Windows -- will require
	  tag.dll and tag_c.dll to be shipped and installed as well.

2009-07-12 22:05  moritz

	* [r16268] win32/taglib.vcproj, win32/taglib_c.vcproj:
	  EOL style.

2009-07-12 22:03  moritz

	* [r16267] win32/ezstream.sln, win32/taglib.vcproj,
	  win32/taglib_c.vcproj:
	  This still doesn't work right, but commit to avoid losing work.

2009-07-12 16:40  moritz

	* [r16266] NEWS:
	  Actually, no ... *grr*.

2009-07-12 16:27  moritz

	* [r16265] ChangeLog:
	  Sync.

2009-07-12 16:24  moritz

	* [r16264] NEWS:
	  Today is release day.

2009-06-21 14:35  moritz

	* [r16150] src/configfile.h:
	  Actually, we agreed on GPLv2 only ...

2009-06-21 14:21  moritz

	* [r16149] NEWS, README, configure.in, m4/ccflags.m4,
	  m4/libshout.m4, m4/libvorbis.m4, m4/libxml2.m4, m4/progname.m4,
	  m4/taglib.m4, m4/tree.m4, m4/vacopy.m4, m4/vars.m4:
	  Update m4 macros, allowing for more easy control over the build
	  process among other things. Fix a silly bug in --enable-debug
	  while there.

2009-06-21 14:08  moritz

	* [r16148] m4/libogg.m4:
	  No need for this, a direct dependency check on libogg is not
	  being done.

2009-04-21 16:51  moritz

	* [r15943] NEWS:
	  Update.

2009-04-21 16:47  moritz

	* [r15942] win32/config.h:
	  Build with TagLib support. (Ticket #1535)

2009-03-28 22:58  moritz

	* [r15888] win32/compat.h:
	  Add missing newline at end of file.

2009-03-28 22:58  moritz

	* [r15887] win32/config.h:
	  Post-release version bump here, too.

2009-03-28 22:56  moritz

	* [r15886] configure.in:
	  Post-release version bump.

2009-03-28 18:47  moritz

	* [r15881] ChangeLog:
	  Sync.

2009-03-28 18:33  moritz

	* [r15880] NEWS:
	  If everything goes to plan, then today is release day.

2009-03-28 15:40  moritz

	* [r15876] win32/README.win32:
	  vcredist is now a requirement, and mention FLAC.

2009-03-28 13:38  moritz

	* [r15875] examples/ezstream_reencode_mp3.xml,
	  examples/ezstream_reencode_vorbis.xml:
	  Remove -x argument to lame. This makes the examples work for me
	  by default again, with a more recent lame version.

2009-03-28 11:14  moritz

	* [r15874] m4/vars.m4:
	  AX_UNIQVAR_PREPEND needs to reverse its arguments before
	  prepending.

2009-03-19 08:14  moritz

	* [r15799] configure.in:
	  Autoconf/M4 chokes on CRLF line endings in configure.in/.ac, so
	  enforce LF on configure.in. Found out the hard way by Roman
	  Donchenko.

2009-03-18 20:24  moritz

	* [r15798] configure.in, src/compat.c, src/ezstream.h,
	  src/strtonum.c, win32/compat.h, win32/config.h:
	  Finish up the modifications to the Windows build. In case
	  anything remains to be done, it'll be nits.

2009-03-18 20:15  moritz

	* [r15797] src/metadata.c:
	  Mh... compiling before commit would've helped.

2009-03-18 19:57  moritz

	* [r15796] src/metadata.c:
	  Make metadata_get_name() return UTF8, which is what the rest of
	  ezstream now expects. From Roman Donchenko.

2009-03-18 19:55  moritz

	* [r15795] configure.in, src/compat.c, src/ezstream.c,
	  src/ezstream.h, win32/ezstream.vcproj:
	  Repair some fallout from previous commits, and work more on Win32
	  builds.

2009-03-18 09:10  moritz

	* [r15794] configure.in, src/Makefile.am, src/compat.c,
	  src/compat.h, src/configfile.c, src/ezstream.c, src/ezstream.h,
	  src/getopt.c, src/metadata.c, src/playlist.c, src/util.c,
	  src/xalloc.c, src/xalloc.h, win32/compat.h:
	  Work towards cleaner portability goo, and remove some ununsed
	  code while there.

2009-03-17 22:25  moritz

	* [r15793] configure.in, win32/Makefile.am, win32/shout:
	  Adjust auto-fu to handle the changed win32/ stuff.

2009-03-17 22:18  moritz

	* [r15792] win32/compat.h, win32/config.h, win32/ezstream.sln,
	  win32/ezstream.vcproj, win32/libflac.vcproj, win32/libogg.vcproj,
	  win32/libshout.vcproj, win32/libspeex.vcproj,
	  win32/libtheora.vcproj, win32/libvorbis.vcproj,
	  win32/libvorbisfile.vcproj, win32/libz.vcproj, win32/shout,
	  win32/shout/Makefile.am, win32/shout/shout.h:
	  After having lost the previous build environment some time ago, I
	  had to start over completely. What a chore ... Anyways, commit
	  this to make it easier to get back to a MSVC build, in case this
	  happens again.

2009-03-17 18:56  moritz

	* [r15791] NEWS:
	  Write complete sentences.

2009-03-17 18:32  moritz

	* [r15790] configure.in, doc/Makefile.am, doc/ezstream.1.in:
	  Set the manual date to the build date.

2009-03-17 18:29  moritz

	* [r15789] COPYING, src/compat.h, src/configfile.c, src/ezstream.c,
	  src/metadata.c, src/playlist.c, src/util.c:
	  Bump copyright year where applicable.

2009-03-17 18:20  moritz

	* [r15788] COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
	  autogen.sh, build-aux/Makefile.am, build-aux/config.rpath,
	  compat/Makefile.am, compat/sys/Makefile.am, compat/sys/tree.3,
	  compat/sys/tree.h, configure.in, doc/Makefile.am,
	  doc/ezstream.1.in, examples/Makefile.am,
	  examples/ezstream_metadata.xml, examples/ezstream_mp3.xml,
	  examples/ezstream_reencode_mp3.xml,
	  examples/ezstream_reencode_theora.xml,
	  examples/ezstream_reencode_vorbis.xml,
	  examples/ezstream_stdin_vorbis.xml, examples/ezstream_vorbis.xml,
	  examples/meta.sh, examples/play.sh, m4/Makefile.am,
	  m4/ccflags.m4, m4/libogg.m4, m4/libshout.m4, m4/libvorbis.m4,
	  m4/libxml2.m4, m4/progname.m4, m4/taglib.m4, m4/tree.m4,
	  m4/vacopy.m4, m4/vars.m4, mkcl.sh, src/Makefile.am, src/compat.c,
	  src/compat.h, src/configfile.c, src/configfile.h, src/ezstream.c,
	  src/getopt.c, src/metadata.c, src/metadata.h, src/playlist.c,
	  src/playlist.h, src/strfctns.h, src/strlcat.c, src/strlcpy.c,
	  src/strtonum.c, src/util.c, src/util.h, src/xalloc.c,
	  src/xalloc.h, win32/Makefile.am, win32/README.win32,
	  win32/config.h, win32/ezstream.sln, win32/ezstream.vcproj:
	  Native EOL-style, and Id tags in a couple of places.

2009-03-17 18:07  moritz

	* [r15787] README:
	  Consistent formatting.

2009-03-17 18:03  moritz

	* [r15786] NEWS:
	  Mention the miscellaneous stuff I also did.

2009-03-16 22:59  moritz

	* [r15782] Makefile.am, NEWS, README, configure.in,
	  m4/libvorbis.m4, m4/taglib.m4, src/metadata.c:
	  #1398: Make optional components optional. (For real.)

2009-03-16 20:39  moritz

	* [r15781] src/compat.c:
	  It's stupid to put my own copyright on a file where I didn't
	  really write the code. Luckily, I had the proper copyright
	  statement in there already, so moving it fixes things.

2009-03-16 20:22  moritz

	* [r15780] src/configfile.c, src/ezstream.c, src/metadata.c,
	  src/playlist.c, src/util.c:
	  Squelch another bunch of warnings after checking that what's
	  happening is what's wanted.

2009-03-16 20:12  moritz

	* [r15779] configure.in, src/Makefile.am, src/compat.h,
	  src/ezstream.c, src/getopt.c, src/getopt.h:
	  Use a wrapper around getopt() for portability. This uses the
	  system getopt() whenever possible, and otherwise uses a stripped
	  down, single options only, BSD getopt() (which is smaller and
	  doesn't come with ifdef-stuff-in-features.h.)

2009-03-16 19:51  moritz

	* [r15778] src/util.c:
	  Guarantee that iconvert() never returns NULL. This is a clumsy,
	  but effective way to prevent NULL dereferences after the recent
	  character conversion changes in other parts of ezstream.

2009-03-16 00:40  moritz

	* [r15777] configure.in, m4/taglib.m4:
	  Unbreak the TagLib checks.

2009-03-16 00:08  moritz

	* [r15776] Makefile.am, NEWS, README, autogen.sh,
	  build-aux/Makefile.am, compat/Makefile.am,
	  compat/sys/Makefile.am, configure.in, doc/Makefile.am,
	  examples/Makefile.am, m4/Makefile.am, m4/ccflags.m4,
	  m4/libogg.m4, m4/libshout.m4, m4/libvorbis.m4, m4/libxml2.m4,
	  m4/progname.m4, m4/taglib.m4, m4/tree.m4, m4/vacopy.m4,
	  m4/vars.m4, m4/xiph_compiler.m4, m4/xiph_xml2.m4,
	  src/Makefile.am, win32/Makefile.am:
	  Overhaul the ezstream build system, using my own library of
	  autoconf macros. There are a few benefits to this, but the main
	  reason is consistency and me completely understanding what's
	  going on. Regressions are not expected, but wouldn't surprise
	  either ... this needs lots of testing.

2009-03-15 17:18  moritz

	* [r15775] src/configfile.c, src/ezstream.c, src/metadata.c,
	  src/playlist.c, src/util.c, src/util.h:
	  Assorted type fixes, unshadowing of variables, etc.

2009-03-15 13:15  moritz

	* [r15774] m4/Makefile.am, m4/shout.m4:
	  "pkg-config --libs shout" has produced correct results for a long
	  time now, making a custom shout.m4 obsolete.

2009-03-15 13:13  moritz

	* [r15773] m4/iconv.m4:
	  Remove iconv.m4, it comes with gettext (i.e. gettext-devel)
	  packages.

2009-03-15 13:12  moritz

	* [r15772] m4/Makefile.am, m4/ogg.m4, m4/vorbis.m4:
	  Remove ogg.m4 and vorbis.m4; the ones installed by libogg/-vorbis
	  are fine.

2009-03-15 11:15  moritz

	* [r15771] NEWS:
	  Update.

2009-03-15 11:05  moritz

	* [r15770] src/configfile.c, src/ezstream.c:
	  Perform more charset conversions where necessary. This should fix
	  the handling of files with non-ASCII filenames, as well as some
	  more cases related to metadata. From Roman Donchenko <DXDragon at
	  yandex dot ru>, with some minor fixes by myself.

2009-03-15 11:00  moritz

	* [r15769] src/compat.h:
	  Fixes for MinGW. From Roman Donchenko <DXDragon at yandex dot
	  ru>.

2009-03-15 10:59  moritz

	* [r15768] src/util.h:
	  Add missing include for shout_t. From Roman Donchenko <DXDragon
	  at yandex dot ru>.

2009-03-15 10:55  moritz

	* [r15767] NEWS, compat/sys/tree.3, compat/sys/tree.h:
	  Update tree macros. The manual now actually has an acceptable
	  license.

2007-12-01 21:43  moritz

	* [r14260] configure.in, win32/config.h:
	  Post-release version bump.

2007-12-01 21:21  moritz

	* [r14257] ChangeLog:
	  Sync.

2007-12-01 21:13  moritz

	* [r14256] NEWS:
	  It has been very quiet after 0.5.2, so get this minor bugfix
	  release out the door today.

2007-12-01 16:02  moritz

	* [r14255] NEWS, src/ezstream.c:
	  Ignore SIGPIPE, which turned out to be the cause for silent
	  deaths of long- running ezstream processes.

2007-11-04 14:34  moritz

	* [r14101] configure.in, win32/config.h:
	  Post-release version bump.

2007-11-04 13:52  moritz

	* [r14097] ChangeLog:
	  Sync.

2007-11-04 13:50  moritz

	* [r14096] NEWS:
	  Today is release day, finally.

2007-11-04 13:43  moritz

	* [r14095] NEWS:
	  Sync.

2007-11-04 13:40  moritz

	* [r14094] examples/Makefile.am,
	  examples/ezstream_reencode_mp3.xml,
	  examples/ezstream_reencode_theora.xml,
	  examples/ezstream_reencode_vorbis.xml,
	  examples/ezstream_reencoding_example_mp3.xml,
	  examples/ezstream_reencoding_example_theora.xml,
	  examples/ezstream_reencoding_example_vorbis.xml,
	  examples/ezstream_stdin_vorbis.xml:
	  * Add new configuration example for streaming from standard
	  input. * Rename reencoding examples to shorter and less redundant
	  filenames.

2007-11-04 13:09  moritz

	* [r14093] examples/ezstream_reencoding_example_mp3.xml,
	  examples/ezstream_reencoding_example_theora.xml,
	  examples/ezstream_reencoding_example_vorbis.xml:
	  Improve the reencoding examples; more usable defaults and add
	  more options to create a more well-defined stream of raw samples.

2007-10-18 07:39  moritz

	* [r14010] NEWS:
	  Sync.

2007-10-18 07:39  moritz

	* [r14009] src/ezstream.c:
	  Improve output messages some more when dealing with standard
	  input.

2007-10-18 06:38  moritz

	* [r14008] src/xalloc.c:
	  Wow, now how did that one creep in an remain undetected for so
	  long?

2007-10-16 14:51  moritz

	* [r14000] NEWS:
	  Update.

2007-10-16 14:51  moritz

	* [r13999] src/ezstream.c:
	  This needs changin' as well.

2007-10-16 14:46  moritz

	* [r13998] src/ezstream.c:
	  Fix use of yet another uninitialized-if-streaming-from-stdin
	  variable. This prevents bogus output in the "real-time" status
	  line.

2007-10-16 14:44  moritz

	* [r13997] src/ezstream.c:
	  Return a proper error message when there's no more data to read
	  from standard input.

2007-10-16 14:28  moritz

	* [r13996] src/ezstream.c:
	  Ticket #1247: Don't dereference uninitialized junk pointers; this
	  fixes a crash when streaming standard input without also using a
	  metadata program (d'oh.)

2007-09-16 12:50  moritz

	* [r13840] NEWS:
	  Post-release tweak: Add Ticket number.

2007-09-16 12:49  moritz

	* [r13839] configure.in, win32/config.h:
	  Bump version number after the 0.5.1 release.

2007-09-16 12:23  moritz

	* [r13835] ChangeLog:
	  Sync.

2007-09-16 12:20  moritz

	* [r13834] NEWS:
	  0.5.1 will be released today.

2007-09-14 07:01  moritz

	* [r13803] NEWS:
	  Update.

2007-09-14 07:01  moritz

	* [r13802] src/ezstream.c:
	  Warn, in verbose mode, when dealing with empty playlists.

2007-09-14 07:00  moritz

	* [r13801] src/playlist.c:
	  In this case, the pl->num check is superfluous.

2007-09-14 06:59  moritz

	* [r13800] src/playlist.c:
	  If there are no playlist entries, dereferencing pl->list causes a
	  segfault. Fix this by checking pl->num early.

2007-08-31 17:19  moritz

	* [r13678] configure.in, win32/config.h:
	  Bump version number after the 0.5.0 release.

2007-08-31 16:22  moritz

	* [r13672] ChangeLog:
	  Sync.

2007-08-31 16:02  moritz

	* [r13671] configure.in:
	  -Wno-unused-parameter breaks gcc2, remove it.

2007-08-31 15:55  moritz

	* [r13670] configure.in:
	  Try harder to link against TagLib.

2007-08-31 11:49  moritz

	* [r13669] NEWS:
	  Today is release day.

2007-08-31 11:47  moritz

	* [r13668] NEWS, configure.in, src/compat.h, src/ezstream.c,
	  src/util.c, src/util.h, win32/config.h:
	  gettimeofday() everywhere; now ezstream behaves almost the same
	  on Windows compared to Unix. Also mention TagLib support on
	  Windows in NEWS.

2007-08-31 11:46  moritz

	* [r13667] src/compat.c:
	  Fake the location of my basename() source to be more clear.

2007-08-31 01:59  moritz

	* [r13665] win32/README.win32:
	  Having TagLib on Windows means that reading metadata from files
	  should work like elsewhere now. While here, do some minor
	  tweaking as well.

2007-08-31 01:48  moritz

	* [r13664] win32/ezstream.sln, win32/ezstream.vcproj:
	  ezstream.exe is now using TagLib as well.

2007-08-30 18:36  moritz

	* [r13662] win32/README.win32:
	  Tweak, sync with what will be the new reality soon, and include
	  COPYING.txt in the future.

2007-08-30 12:27  moritz

	* [r13660] NEWS:
	  Document a few extra nits that also happened so far.

2007-08-30 12:13  moritz

	* [r13659] doc/ezstream.1.in:
	  Sync with new reality, and fix a completely botched up sentence.

2007-08-30 11:31  moritz

	* [r13658] src/ezstream.c, src/util.c, src/util.h:
	  * Back out conversions to ISO8859-1. * Add 'charset=UTF-8' to the
	  metadata update query arguments. The current release of Icecast
	  will ignore it, and the next one will know how to handle it
	  (karl@ is still working on it at this point, but previous diffs
	  worked as advertised.) * If no metadata format string is
	  available and we have both an artist and a title, use the
	  artist/title way of updating instead of the generic "song"
	  interface.

2007-08-26 14:31  moritz

	* [r13632] configure.in:
	  When configure found libiconv, it helps to also have it use that
	  information to properly link against it. Problem spotted and fix
	  tested by iCER on #icecast.

2007-08-25 15:07  moritz

	* [r13627] doc/ezstream.1.in:
	  Expand the "Metadata Caveats" subsection wrt codesets and actual
	  abilities of ezstream and Icecast.

2007-08-25 14:37  moritz

	* [r13626] src/util.c:
	  Need to consider converting from an unknown/unsupported codeset
	  as well.

2007-08-25 14:16  moritz

	* [r13624] src/util.c:
	  Whoops. Fix error message ...

2007-08-25 12:24  moritz

	* [r13622] src/ezstream.c, src/metadata.c, src/util.c, src/util.h:
	  Get closer to what Icecast does (or will) expect wrt used
	  codesets. I still disagree with the new ISO-8859-1 assumption for
	  non-Ogg streams, because (for example) with ID3 tags, a codeset
	  is simply not part of the specification and a better assumption
	  would be that they are in the user's locale. Therefore, it would
	  make more sense, IMO, to clearly specify that ANY metadata sent
	  to Icecast should be UTF-8 and let the source client figure out
	  the rest. This would also answer the question what codeset an
	  /admin user should use if the content type of a mountpoint isn't
	  known (although that can be figured out with an unclean read of
	  the mountpoint's stats beforehand.)

2007-08-24 17:23  moritz

	* [r13616] src/util.c:
	  Less code is always better.

2007-08-24 12:37  moritz

	* [r13611] README:
	  Mention optional iconv() dependency.

2007-08-24 12:09  moritz

	* [r13610] NEWS:
	  Add ticket no. to the MP3 metadata fix.

2007-08-24 11:57  moritz

	* [r13609] NEWS, configure.in, doc/ezstream.1.in, src/ezstream.c,
	  src/metadata.c, src/util.c, win32/config.h,
	  win32/ezstream.vcproj:
	  UTF-8 support is now ready to be used.

2007-08-24 00:52  moritz

	* [r13607] ., Makefile.am, build-aux, build-aux/Makefile.am,
	  build-aux/config.rpath, configure.in, m4/iconv.m4, src/util.c,
	  src/util.h:
	  Work in progress: Proper UTF-8 support that doesn't affect
	  console output. No new code is actually used, yet, as there's
	  still more work to be done. This adds the whole iconv-related
	  build stuff and moves most auto* files into build-aux/.

2007-08-24 00:46  moritz

	* [r13606] src/metadata.c:
	  Fix native ID3v1 reading (no-op, since affected fields were not
	  used.)

2007-08-23 13:48  moritz

	* [r13592] src/ezstream.c:
	  Change the MP3 special case, so working with metadata is more
	  flexible. Turns out that there is still a problem with MP3
	  streams that are being reencoded. This allows me to try out more
	  solutions.

2007-08-22 18:29  moritz

	* [r13589] NEWS:
	  Consistency + typo fix.

2007-08-22 15:19  moritz

	* [r13587] doc/ezstream.1.in, src/ezstream.c:
	  The -c parameter is not optional.

2007-08-22 15:15  moritz

	* [r13586] src/ezstream.c, src/util.c, src/util.h:
	  Make main() smaller by moving the libshout setup into a separate
	  function.

2007-08-14 04:10  moritz

	* [r13546] win32/config.h:
	  Bump version numbers here, too.

2007-08-14 04:08  moritz

	* [r13545] NEWS:
	  Sync.

2007-08-14 03:43  moritz

	* [r13544] doc/ezstream.1.in, src/ezstream.c, src/metadata.c,
	  src/metadata.h:
	  Ticket #1225, reported by matpoc at lenta dot ru: Looks like
	  there's demand for normalizing metadata strings, which -- I
	  assume -- is due to strange (MP3) encoders that do weird things.
	  Well, why not. It's not too intrusive, and disabled by default.
	  Enable string normalization with the new -n command line
	  parameter.

2007-08-14 03:33  moritz

	* [r13543] configure.in:
	  Bump to 0.5.0, new feature coming up.

2007-08-14 03:32  moritz

	* [r13542] src/ezstream.c, src/util.c, src/util.h:
	  Ticket #1225, reported by matpoc at lenta dot ru: Bring back
	  special case for streaming MP3 files without reencoding, which
	  was lost during the many changes in 0.3.0 and subsequently
	  forgotten. Sorry for the inconvenience, and thanks for the
	  report.

2007-08-09 11:13  moritz

	* [r13494] win32/ezstream.sln, win32/ezstream.vcproj:
	  More build tweaks. The only thing that still doesn't work by now
	  is building a static, thread-safe libshout. Bugger all, this can
	  wait until if/when I need threads.

2007-08-08 21:52  moritz

	* [r13467] src/playlist.c:
	  Since playlist_t is using size_t, change two unsigned longs to
	  size_t as well.

2007-08-08 21:33  moritz

	* [r13466] win32/config.h, win32/ezstream.sln,
	  win32/ezstream.vcproj:
	  More Win32 project and build cleanups.

2007-08-08 14:21  moritz

	* [r13464] win32/ezstream.sln, win32/ezstream.vcproj:
	  Reorder project list and add xalloc.* to the build.

2007-08-08 14:20  moritz

	* [r13463] src/ezstream.c, win32/config.h:
	  WIN32 #ifdef reduction.

2007-08-08 13:46  moritz

	* [r13462] configure.in:
	  A few tweaks: * Get ISO C99 from the compiler, if possible. *
	  Check for ssize_t for --enable-debug portability. * Add
	  AC_C_VOLATILE check, because we use it.

2007-08-08 13:25  moritz

	* [r13461] win32/config.h:
	  Damn, it looks like I forgot to update this for the Win32 builds
	  ...

2007-08-08 13:24  moritz

	* [r13460] src/xalloc.c:
	  Sync.

2007-08-08 13:15  moritz

	* [r13458] src/ezstream.c:
	  Rename shutdown() to ez_shutdown() to prevent a function name
	  clash on Windows.

2007-08-08 13:04  moritz

	* [r13457] src/metadata.c, src/playlist.c:
	  Use a better \n and \r trimming idiom after fgets().

2007-08-04 17:24  moritz

	* [r13443] src/xalloc.c, src/xalloc.h:
	  It's good to know how to spell the own email address.

2007-08-04 17:10  moritz

	* [r13441] src/xalloc.c:
	  Merge.

2007-08-04 17:10  moritz

	* [r13440] src/playlist.c:
	  Sprinkle in some consistency ...

2007-08-04 17:04  moritz

	* [r13438] src/configfile.c, src/configfile.h, src/ezstream.c:
	  Do a clean shutdown on SIGINT and SIGTERM.

2007-08-04 16:46  moritz

	* [r13437] src/xalloc.c, src/xalloc.h:
	  Merge xalloc changes.

2007-08-04 16:39  moritz

	* [r13436] src/ezstream.c, src/metadata.c, src/playlist.c:
	  Now that xalloc is pretty much an external entity, explicitly set
	  freed pointers to NULL if we lateron expect them to be NULL (no
	  longer rely on xalloc to do this for us.)

2007-08-04 16:09  moritz

	* [r13433] src/metadata.c:
	  Do not xfree() something that wasn't x*alloc()'ed.

2007-08-02 18:50  moritz

	* [r13432] configure.in:
	  Make PACKAGE_BUGREPORT point to the bug tracker URI.

2007-08-02 18:48  moritz

	* [r13431] Makefile.am, NEWS, README, compat, compat/Makefile.am,
	  compat/sys, compat/sys/Makefile.am, compat/sys/tree.3,
	  compat/sys/tree.h, configure.in, src/Makefile.am,
	  src/configfile.c, src/ezstream.c, src/metadata.c, src/playlist.c,
	  src/util.c, src/util.h, src/xalloc.c, src/xalloc.h:
	  Switch to using the (integrated) libxalloc.

2007-07-24 15:29  moritz

	* [r13304] src/ezstream.c, src/metadata.c:
	  Cosmetic changes; no functional change. Use the calloc()-style
	  API correctly.

2007-07-24 15:13  moritz

	* [r13303] src/util.c:
	  Cosmetic changes. No functional change.

2007-07-24 13:44  moritz

	* [r13302] configure.in:
	  Bump version number after the 0.4.3 release.

2007-07-24 13:21  moritz

	* [r13298] ChangeLog:
	  Sync.

2007-07-24 13:20  moritz

	* [r13297] NEWS:
	  Another bugfix, another 0.4.x release.

2007-07-24 13:04  moritz

	* [r13296] src/ezstream.c:
	  Fix the dang file descriptor leak of < 0.4.1 for good; the old
	  fix only took care of it partially. Diagnosed with the help from
	  someone, who wishes to stay anonymous. Thanks!

2007-07-17 15:16  moritz

	* [r13279] configure.in:
	  Bump the version number after the 0.4.2 release.

2007-07-17 14:47  moritz

	* [r13275] ChangeLog:
	  Sync

2007-07-17 14:45  moritz

	* [r13274] NEWS:
	  Get this out the door today, no need to hold back.

2007-07-16 00:32  moritz

	* [r13272] NEWS, src/ezstream.c:
	  D'oh! Make <stream_once/> work with playlists as well. Problem
	  description found in the Icecast mailing list archive, in a mail
	  by Geoff Shang, via Google. Let's hope that the bug tracker
	  prevents this kind of bug hunting in the future ...

2007-07-15 19:16  moritz

	* [r13270] win32/README.win32:
	  Provide a pointer to the home page to Windows users.

2007-07-15 19:11  moritz

	* [r13269] configure.in:
	  Bump version number after the 0.4.1 release.

2007-07-15 16:38  moritz

	* [r13265] ChangeLog:
	  Update.

2007-07-15 16:37  moritz

	* [r13264] NEWS:
	  This will be released today.

2007-07-14 01:32  moritz

	* [r13259] COPYING, doc/ezstream.1.in, src/compat.c, src/compat.h,
	  src/configfile.c, src/configfile.h, src/ezstream.c,
	  src/metadata.c, src/metadata.h, src/playlist.c, src/playlist.h,
	  src/util.c, src/util.h:
	  Change my email address to the new one.

2007-07-14 01:27  moritz

	* [r13258] NEWS:
	  Update.

2007-07-14 01:20  moritz

	* [r13257] src/ezstream.c:
	  Plug an fd leak, triggered by using -q.

2007-07-13 10:45  moritz

	* [r13253] README:
	  Spelingk, and fmt -78.

2007-07-13 10:30  moritz

	* [r13252] doc/ezstream.1.in:
	  Spelink.

2007-03-11 05:17  moritz

	* [r12724] configure.in, win32/config.h:
	  Bump version number after the 0.4.0 release.

2007-03-11 05:04  moritz

	* [r12720] ChangeLog:
	  sync

2007-03-11 04:39  moritz

	* [r12719] NEWS:
	  Release coming up today.

2007-03-11 03:49  moritz

	* [r12718] NEWS:
	  fixes

2007-03-11 00:28  moritz

	* [r12717] src/metadata.c:
	  Make this build on Windows and not segfault the MIPSpro C
	  compiler version <7.2.

2007-03-11 00:02  moritz

	* [r12716] doc/ezstream.1.in:
	  Formatting improvements, and some minor rewording.

2007-03-10 23:36  moritz

	* [r12715] win32/Makefile.am:
	  Missed a conf -> examples change here.

2007-03-10 23:28  moritz

	* [r12714] src/metadata.c:
	  taglib_file_audioproperties returns const

2007-03-10 22:44  moritz

	* [r12713] src/metadata.c:
	  Remove unreachable statement.

2007-03-10 21:23  moritz

	* [r12712] NEWS, src/metadata.c, src/playlist.c:
	  Do not execute group-/world-writeable playlist and metadata
	  scripts.

2007-03-10 21:18  moritz

	* [r12711] NEWS, src/ezstream.c, src/metadata.c, src/metadata.h:
	  Include the total playing time of a song in the "real-time"
	  output, if TagLib supplies it.

2007-03-10 20:13  moritz

	* [r12710] Makefile.am, conf, configure.in, examples,
	  examples/Makefile.am, examples/ezstream_metadata.xml,
	  examples/ezstream_mp3.xml,
	  examples/ezstream_reencoding_example_mp3.xml,
	  examples/ezstream_reencoding_example_theora.xml,
	  examples/ezstream_reencoding_example_vorbis.xml,
	  examples/ezstream_vorbis.xml, examples/meta.sh, examples/play.sh,
	  win32/README.win32:
	  Move conf/ to examples/. Add ezstream_metadata.xml and two
	  minimalistic example scripts.

2007-03-10 19:03  moritz

	* [r12707] NEWS, doc/ezstream.1.in, src/configfile.c,
	  src/configfile.h, src/ezstream.c, src/metadata.c, src/metadata.h:
	  More metadata featuritis, add <metadata_format/> and implement
	  support for '@a@', '@t@' and '@s@'.

2007-03-10 02:27  moritz

	* [r12701] src/configfile.c, src/configfile.h, src/ezstream.c,
	  src/metadata.c, src/metadata.h:
	  Commit work-in-progress towards more fine-grained control over
	  metadata. This has not been checked for changes to previous
	  behavior and isn't complete, yet. More to come.

2007-03-09 13:43  moritz

	* [r12698] Makefile.am, src/ezstream.c, win32/Makefile.am,
	  win32/README.win32:
	  Various tweakings, and sync Win32 README with new reality.

2007-03-09 02:30  moritz

	* [r12693] NEWS, doc/ezstream.1.in, src/configfile.c,
	  src/configfile.h, src/ezstream.c, src/metadata.c, src/metadata.h:
	  Add new <metadata_progname> configuration option, which specifies
	  an external program/script to get metadata from. Also include
	  SIGUSR2 handling that triggers metadata updates from the external
	  program mid-stream.

2007-03-09 02:24  moritz

	* [r12692] src/playlist.c:
	  Squash a bug that I introduced a few hours ago ...

2007-03-09 01:52  moritz

	* [r12691] Makefile.am:
	  Commit forgotten /Makefile.am change (new regen-win32: target).

2007-03-09 01:49  moritz

	* [r12690] NEWS:
	  sync

2007-03-09 01:49  moritz

	* [r12689] win32/Makefile.am, win32/ezstream.1.html:
	  Kill off the ugly HTML page. Replace with a regen-win32: target
	  in Makefile.am that automatically generates a PDF version of the
	  current man page (PDF not included in the source tarball.)

2007-03-09 01:44  moritz

	* [r12688] win32/README.win32:
	  Update with blurp about limited functionality.

2007-03-08 21:38  moritz

	* [r12686] src/ezstream.c, src/playlist.c:
	  Shrink buffers to PATH_MAX.

2007-03-08 20:59  moritz

	* [r12685] src/ezstream.c, src/playlist.c, src/playlist.h:
	  Fix playlist_free() as well ...

2007-03-08 20:24  moritz

	* [r12684] NEWS, README, configure.in, src/Makefile.am,
	  src/metadata.c:
	  Working TagLib support (optional.)

2007-03-08 19:46  moritz

	* [r12683] src/compat.h:
	  Define SIZE_T_MAX to the real maximum of size_t.

2007-03-08 19:45  moritz

	* [r12682] win32/ezstream.vcproj:
	  sync

2007-03-08 15:25  moritz

	* [r12681] src/ezstream.c, src/metadata.c, src/metadata.h:
	  Hmph. I've been stepping into the copy-of-pointer trap twice now.
	  Fix it again.

2007-03-08 14:39  moritz

	* [r12680] configure.in, src/Makefile.am, src/ezstream.c,
	  src/metadata.c, src/metadata.h:
	  Iterate towards optional TagLib support, as well as scripted
	  metadata support. This is just the first step and equivalent to
	  current functionality.

2007-03-08 14:36  moritz

	* [r12679] configure.in, win32/config.h:
	  New features coming up, bump version to 0.4.0

2007-03-08 14:34  moritz

	* [r12678] NEWS:
	  sync

2007-03-08 01:12  moritz

	* [r12677] src/util.c, src/util.h:
	  Replace the very broken xfree() function with an xfree() macro -
	  the main point was to set ptr to NULL, but the function only set
	  the copy of ptr to NULL. Spotted by Karl Heyes, thanks a lot!

2007-03-07 23:39  moritz

	* [r12676] src/playlist.c:
	  Remove redundant code since the switch to xfree().

2007-03-07 21:01  moritz

	* [r12673] src/Makefile.am, src/compat.c, src/compat.h,
	  src/configfile.c, src/ezstream.c, src/playlist.c, src/util.c,
	  src/util.h, win32/ezstream.vcproj:
	  More code reorganization, move compatibility and utility
	  functions out of ezstream.c. Use a basename() function for
	  Windows that behaves identical to a modern Unix' basename().

2007-03-07 12:53  moritz

	* [r12672] src/configfile.c:
	  cosmetics

2007-03-06 14:11  moritz

	* [r12666] ., conf, doc, m4, src, win32:
	  Ignore generated files.

2007-03-06 14:02  moritz

	* [r12665] configure.in, win32/config.h:
	  Bump version number after the 0.3.0 release.

2007-03-05 02:03  moritz

	* [r12639] ChangeLog:
	  regen

2007-03-05 01:01  moritz

	* [r12637] win32/ezstream.1.html:
	  regen

2007-03-05 00:51  moritz

	* [r12636] doc/ezstream.1.in:
	  Fix a typo, and reword a few sentences to make them easier to
	  understand.

2007-03-04 23:58  moritz

	* [r12635] NEWS:
	  Add release date. This is definitely going out today...

2007-03-04 21:19  moritz

	* [r12634] ChangeLog:
	  regen

2007-03-04 21:12  moritz

	* [r12633] README:
	  Sync with the blurb on the new home page.

2007-03-04 15:59  moritz

	* [r12630] src/configfile.c:
	  Fix logic error and prevent an endless loop on error(s) in the
	  config file.

2007-03-04 15:50  moritz

	* [r12629] src/playlist.c:
	  While rand() being crappy is true for most/all *nix systems, on
	  Windows, this is different. The shifting severely screwed up its
	  randomness. Just leave it away and systems that only have a bad
	  version of rand() will have to just deal with it.

2007-03-04 15:16  moritz

	* [r12628] COPYING, NEWS, src/configfile.c, src/ezstream.c,
	  win32/README.win32:
	  More pre-release maintenance.

2007-03-04 14:29  moritz

	* [r12627] win32/Makefile.am, win32/README.win32, win32/config.h,
	  win32/ezstream.1.html, win32/ezstream.sln, win32/ezstream.vcproj:
	  Yay. I finally managed to build a statically linked and
	  self-contained ezstream.exe. Update, and regen the HTML man page
	  for -V.

2007-03-04 14:27  moritz

	* [r12626] doc/ezstream.1.in, src/ezstream.c:
	  Add -V command line parameter to print the version number and
	  exit.

2007-03-03 20:20  moritz

	* [r12621] win32/Makefile.am, win32/README.win32,
	  win32/ezstream.1.html, win32/ezstream.sln, win32/ezstream.vcproj:
	  More, rather evil Windows stuff. This is about as far as I'm
	  willing to go for now. Volunteers willing to take all this
	  Windows stuff off my hands are very welcome. ;-)

2007-03-03 20:17  moritz

	* [r12620] src/compat.h, src/configfile.c, src/ezstream.c,
	  src/strtonum.c:
	  Some more cosmetic tweaks.

2007-03-03 17:50  moritz

	* [r12617] src/ezstream.c:
	  Forgot one PATH_SEPARATOR instance ...

2007-03-03 17:48  moritz

	* [r12616] src/ezstream.c:
	  Use size_t in strrcmp().

2007-03-03 16:13  moritz

	* [r12615] src/Makefile.am, src/compat.h, src/ezstream.c,
	  src/playlist.c, win32/Makefile.am, win32/ezstream.dsp,
	  win32/ezstream.dsw, win32/ezstream.iss, win32/ezstream.sln,
	  win32/ezstream.vcproj:
	  Iterate back towards working Windows support.

2007-03-03 12:42  moritz

	* [r12614] src/ezstream.c:
	  STDERR_FILENO -> fileno(stderr), and fix a brain'o: Systems with
	  limited or no signals support obviously don't have
	  SIG_HUP/SIG_USR1 defined.

2007-03-02 12:52  moritz

	* [r12603] configure.in, src/Makefile.am, src/configfile.c,
	  src/ezstream.c, src/strfctns.h, src/strlcat.c, src/strlcpy.c,
	  src/strlfctns.h, src/strtonum.c:
	  Improve string to integer conversion stuff, and have another stab
	  at the config file parsing. Ezstream now prints each error it can
	  find and then bails out, instead of bailing out on the first
	  error. Tweak URL parsing as well, and do some cosmetic changes to
	  the error messages.

2007-03-02 00:57  moritz

	* [r12599] NEWS, doc/ezstream.1.in, src/configfile.c,
	  src/configfile.h, src/ezstream.c:
	  Allow users to restrict the number of reconnection attempts. This
	  also changes how reconnections are handled in general: A
	  recovered connection always skips to the next tune as well, as it
	  seems that at least for Ogg Vorbis, libshout wants to see an Ogg
	  header after a shout_open(). The new code makes this behavior
	  consistent among all formats.

2007-03-01 14:50  moritz

	* [r12597] configure.in, src/ezstream.c, src/playlist.c,
	  src/strlcat.c, src/strlcpy.c, src/util.c:
	  Enable more warnings on gcc, and do some miscellaneous cleanups.

2007-03-01 01:22  moritz

	* [r12596] src/ezstream.c:
	  Redirect only de-/encoder screen output to /dev/null with -q, and
	  restore standard error outside that popen() call.

2007-03-01 00:34  moritz

	* [r12595] m4/shout.m4:
	  Tweak XXX comment.

2007-03-01 00:10  moritz

	* [r12594] README, configure.in:
	  Make the example configuration files directory configurable.

2007-02-28 21:48  moritz

	* [r12592] NEWS, conf/ezstream_mp3.xml, conf/ezstream_vorbis.xml,
	  doc/ezstream.1.in, src/configfile.c, src/configfile.h,
	  src/ezstream.c:
	  Add new <stream_once> configuration option for disabling
	  continuous streaming.

2007-02-28 21:26  moritz

	* [r12591] NEWS, conf/ezstream_reencoding_example_mp3.xml,
	  conf/ezstream_reencoding_example_vorbis.xml, doc/ezstream.1.in,
	  src/configfile.c, src/configfile.h, src/ezstream.c,
	  src/playlist.c, src/playlist.h:
	  Add new playlist scripting feature (works similar to Ices 2.x.)

2007-02-28 15:35  moritz

	* [r12590] configure.in, src/ezstream.c:
	  Replace geteuid() check with stat(), and make it an error if the
	  configuration file is group or world writeable. This is actually
	  what the warning about root was all about.

2007-02-28 13:53  moritz

	* [r12589] src/Makefile.am, src/ezsignals.h, src/ezstream.c:
	  Back out hardly used ezsignals.h.

2007-02-28 12:47  moritz

	* [r12588] NEWS:
	  Remove redundant paragraph.

2007-02-28 12:44  moritz

	* [r12587] CHANGELOG, ChangeLog, Makefile.am, NEWS, mkcl.sh:
	  Make a more standard distribution: Rename CHANGELOG to NEWS,
	  bring back the complete ChangeLog and add mkcl.sh that contains
	  the options to generate ChangeLog.

2007-02-28 11:06  moritz

	* [r12586] CHANGELOG, ChangeLog, Makefile.am:
	  Switch from a generated ChangeLog to a manually maintained and
	  more compact CHANGELOG.

2007-02-28 11:03  moritz

	* [r12585] src/ezstream.c:
	  Sync usageHelp() with new reality.

2007-02-27 14:44  moritz

	* [r12576] configure.in:
	  Let MIPS[pro] C be chatty with warnings and check for basename()
	  in libgen. Ezstream now builds on IRIX.

2007-02-27 14:42  moritz

	* [r12575] src/ezstream.c:
	  getopt() returns int, not char.

2007-02-27 14:41  moritz

	* [r12574] m4/xiph_xml2.m4:
	  Use backticks to execute xml2-config/xslt-config, which is more
	  portable.

2007-02-27 12:46  moritz

	* [r12573] README:
	  Document a caveat when building ezstream on Solaris with a
	  different compiler than the one used to build libshout.

2007-02-26 20:29  moritz

	* [r12572] configure.in, m4/shout.m4:
	  Make this work on static archs, and get one step closer to SunCC
	  support on Solaris. Also, don't complain if libshout isn't
	  thread-safe, as Ezstream isn't multithreaded.

2007-02-26 19:59  moritz

	* [r12571] Makefile.am, configure.in, m4/Makefile.am:
	  Add m4/ to the distribution tarball.

2007-02-26 15:28  moritz

	* [r12570] Makefile.am, m4/ogg.m4, m4/vorbis.m4:
	  Unbreak "make distcheck": $prefix is not a good default, use
	  /usr/local instead. This makes it more likely that installed
	  libogg and libvorbis are found, when the user (or autoconf)
	  specifies a different --prefix. Users who installed their
	  libraries in their homedir now have to set $OGG_PREFIX and
	  $VORBIS_PREFIX, or set their respective --with arguments. Let the
	  snapshot target use distcheck now that it works.

2007-02-26 02:56  moritz

	* [r12565] m4/ac_config_libconfig_in.m4, m4/acx_pthread.m4,
	  m4/ogg.m4, m4/shout.m4, m4/vorbis.m4, m4/xiph_compiler.m4,
	  m4/xiph_curl.m4, m4/xiph_net.m4, m4/xiph_path_python.m4,
	  m4/xiph_types.m4, m4/xiph_xml2.m4:
	  Remove unused .m4 files and sync the used ones with Icecast.

2007-02-25 18:28  moritz

	* [r12564] src/ezstream.c:
	  Make Ezstream work properly and do the right thing, even when
	  bombarded with a flurry of simultaneous SIGHUP and SIGUSR1
	  signals. From what I can tell, signal handling is now quite solid
	  now. Achieve this by moving most of streamFile() into a new
	  sendStream() function, which is called within a new do-while loop
	  inside streamFile(). There, proper behavior is ensured and a race
	  condition resolved in favor of SIGHUP.

2007-02-25 16:00  moritz

	* [r12563] src/ezstream.c:
	  Switch from using signal() to sigaction() and friends, so that
	  SA_RESTART can be used. This is required for Solaris and possibly
	  others, where signal handlers have to be reinstalled after having
	  caught one signal via signal(). Also prevent Ezstream from being
	  killed by a handled signal in streamFile(), where they can
	  interrupt fread()'s system calls. This improves matters, but
	  isn't perfect, yet. A SIGHUP signal can still cause skipping to
	  the next track, which should be triggered only by SIGUSR1.

2007-02-25 14:00  moritz

	* [r12562] Makefile.am, conf/Makefile.am, configure.in,
	  src/Makefile.am, src/configfile.c, src/configfile.h,
	  src/ezstream.c, win32/Makefile.am:
	  Various cleanups and auto-fu tweaks. * Make Makefile.am files
	  look alike as much as possible. * Remove debug: target and don't
	  mess with the users DEBUG environment variable: Autoconf checks
	  for -g and automatically adds it to CFLAGS, which is overridden
	  by the user's $DEBUG. If the user didn't specify one, "make
	  install" will strip the resulting binaries and leave the
	  debugging symbols intact otherwise. * Remove profile: target, as
	  it is quite pointless in Ezstream. Also, the user can add
	  profiling flags via the $DEBUG variable as well. * Remove
	  -ffast-math and -fsigned-char from gcc, and enable two additional
	  warnings instead. * Unconfuse Solaris compiler flags
	  (unfortunately, the configure script still fails in the libshout
	  check with some obscure linker error): Do not force -x04 and
	  -fast optimizations, let the user decide (it doesn't matter for
	  Ezstream anyways.) Remove -xgc92, which is deprecated and
	  actually makes the resulting binary run slower on SPARC. Also
	  remove -fsimple, which does not help and has the potential of
	  causing trouble, and don't enable verbose warnings just to
	  disable them afterwards with -w. Leave only -v for verbose
	  warnings. * Const'ify getFormat*() functions and blankString, and
	  squelch a few const- related warnings. * Squelch a signedness
	  warning and fix two ;; syntax errors. * Add a snapshot target to
	  Makefile.am that creates a tarball of the form
	  ezstream-snapshot-YYYYMMDD.tar.gz.

2007-02-25 03:49  moritz

	* [r12557] src/ezstream.c:
	  Merge changes to the remaining two functions, openResource() and
	  streamFile(), after which the merge is complete. Changes in
	  openResource(): * Let the caller know whether we're streaming
	  from standard input, and give it a copy of the metadata
	  information. * Make filename extension matching case insensitive.
	  Ezstream can now stream foo.Ogg out of playlist.tXt. (On that
	  note, another item from the parseConfig() commit log message was
	  missing: <format/> and <match/> are also case insensitive now.)
	  Changes in streamFile(): * New feature: Skip currently playing
	  track when receiving SIGUSR1. * New feature: When using both the
	  new -q and -v command line parameters, Ezstream now displays some
	  "real-time" information: playlist position, elapsed time
	  streaming the current track, and approximate bitrate in kbps. *
	  Fix the fread() loop by moving the "if read bytes > 0" condition
	  into the while statement, and check with ferror() afterwards
	  whether an error occured. * Remove redundant shout_delay() call.
	  Ezstream puts itself to sleep with shout_sync(). * Return a value
	  that makes sense in main()'s do-while loop, instead of whatever
	  shout_send() returned last. * Remove or prettify a few messages.

2007-02-25 03:10  moritz

	* [r12554] src/ezstream.c:
	  Merge processMetadata() changes: * Fix how the metadata string is
	  generated. Don't include the " - " in the output if either artist
	  or title are missing from ID3v1/Vorbis tags. * Print the correct
	  error message when ov_open() fails. * Improve filename-based
	  generation of metadata. Use a copy of fileName for basename(),
	  which may modify its argument in some places where the old, weird
	  POSIX implementation is used. Also, basename() is not infallible,
	  but when it fails, it is annoying for us. Assert that it cannot
	  fail since we feed it with path names < PATH_MAX (handled in
	  playlist.c and configfile.c.) In short, make processMetadata()
	  always return something more or less useful as long as the file
	  in question can be opened.

2007-02-25 02:36  moritz

	* [r12553] src/ezstream.c:
	  Merge changes to replaceString() and buildCommandString(), and do
	  the formatting nitpickery to setMetadata(). Changes in
	  replaceString(): * Fix a heap overflow. replaceString() would
	  happily replace multiple '@T@' and '@M@' placeholders and write
	  into *dest until things blow up. Fix this by using safe string
	  functions. Then completely prevent it by ensuring that it
	  replaces only one placeholder per call (adjusting
	  buildCommandString() accordingly) and already complaining to the
	  user in parseConfig() about illegal, multiple placeholders in
	  their command lines. (That parseConfig() change was missing from
	  the commit log earlier.) In buildCommandString(): * Use xcalloc()
	  instead of malloc() and get rid of the now redundant memset()
	  calls. * Allow decoder command lines to contain the '@M@'
	  metadata placeholder. Useful for combined de-/encoders like
	  ffmpeg2theora. * Tweak message about "unsupported" format, which
	  used to be false in the case of Ogg Theora streams. * Plug
	  several memory leaks. * Don't print the "Executing command 'foo'"
	  message in this function.

2007-02-25 01:14  moritz

	* [r12552] src/ezstream.c:
	  Merge changes to main(), urlParse() and streamPlaylist(). In
	  main(): * Install the signal handler as late as possible. * Add
	  new command line options: -v (verbose, use twice for even more
	  verbose output) and -q (quiet, redirect standard error output
	  from external de-/ encoders to /dev/null.) * It is now an error
	  to supply more than one -c parameter. This prevents unexpected
	  results. * Add a stern warning when ezstream is running as root.
	  Just Don't Do It. Leaving the configfile writeable to others by
	  accident could mean instant root compromise. * Before handing the
	  config file over to libxml, try to open it ourselves first. The
	  error message from strerror() is a lot more helpful than the
	  cryption I/O error printed by libxml. * Don't preallocate memory
	  for urlParse(). * Fix command line error messages, they seem to
	  be for a different program than Ezstream. * More terse libshout
	  error messages, just print which function failed. I consider
	  these errors of questionable value for an end user, but at least
	  a knowledgeable one will know instantly what went wrong. * Case
	  insensitive matching of playlist file extensions. * Print the
	  address, port and mountpoint that Ezstream is actually trying to
	  connect to, instead of what the user supplied. That should make
	  it easier to spot reasons for connect failures (e.g. typos.)
	  Changes in urlParse(): * Let urlParse() allocate memory for
	  hostname and mountpoint, as it knows how much memory is actually
	  required. * Fix a buffer overflow of the tmpPort buffer by adding
	  checks and using safe string functions. * Let the caller print an
	  error message, instead of having the same printf() twice in
	  urlParse(). The streamPlaylist() function has been rewritten to
	  use the new playlist_*() routines. Apart from the added playlist
	  shuffle feature no functional change.

2007-02-25 00:35  moritz

	* [r12551] configure.in:
	  Add check for geteuid(), which is better than checking for WIN32.

2007-02-25 00:25  moritz

	* [r12550] src/ezstream.c:
	  Begin merging ezstream.c changes. This first batch includes: *
	  License reference and various #include cleanups and additions
	  that are required later. * Add new usage() and usageHelp()
	  functions (which already contain what's to come.) Move them close
	  to main() where getopt() is called. * New signal handler, which
	  now no longer uses printf(). printf() is not safe to use in
	  signal handlers. Use volatile sig_atomic_t types instead of ints
	  as flags to set in the handler. * Formatting and const'ifying of
	  WIN32-basename() and strrcmp(). Rearrange them so that the actual
	  "worker functions" are grouped together. * Add function
	  prototypes for those that are already up-to-date. * Rename
	  ReplaceString() to replaceString() for consistency with other
	  function names in Ezstream. * Prepare for portable *__progname
	  usage.

2007-02-24 23:26  moritz

	* [r12549] src/configfile.c:
	  Merge new parseConfig() function. There were many changes, but
	  those are too cumbersome to merge separately. They are: * The
	  usual formatting nitpickings. * Don't leak memory in case of
	  duplicate entries. Instead make it an error and print a helpful
	  error message, with config file line number, to the user. *
	  Replace the manual cast to (const xmlChar *) with libxml2's
	  BAD_CAST. There probably won't be any UTF8 support in Ezstream
	  any time soon ... * Remove redundant strlen() check -
	  xmlNodeListGetString() never returns an empty string if
	  (cur->xmlChildrenNode != NULL). * Use xstrdup() instead of
	  malloc() + memset() + strcpy(). * Ensure that boolean
	  configration options are always either 1 or 0. * Ensure that path
	  names given via <filename /> do not exceed PATH_MAX. * Add
	  <shuffle /> configuration option for playlist shuffling.

2007-02-24 23:05  moritz

	* [r12548] src/configfile.c:
	  Add function to free a configuration in case of an error.

2007-02-24 23:03  moritz

	* [r12547] configure.in:
	  Fix typo in comment.

2007-02-24 22:56  moritz

	* [r12546] src/configfile.c:
	  Replace three if-conditionals with one, both in
	  getFormatEncoder() and getFormatDecoder(), with prettier
	  formatting.

2007-02-24 22:50  moritz

	* [r12545] src/configfile.c, src/configfile.h:
	  Const'ify configfile functions.

2007-02-24 22:25  moritz

	* [r12544] src/configfile.c, src/configfile.h:
	  Add license reference to configfile.c, sync #includes with what
	  will be required later, getEZConfig() formatting and remove
	  unused printConfig() function.

2007-02-24 22:16  moritz

	* [r12543] src/configfile.h:
	  Begin merging configfile.* changes by cleaning up the .h file:
	  Add license reference, remove prototype of nonexistent
	  getMetadataGrabber() function, and do some formatting.

2007-02-24 22:03  moritz

	* [r12542] win32/Makefile.am:
	  Clean core and backup files in this directory as well. Only ~2500
	  lines of diffs left to merge.

2007-02-24 22:01  moritz

	* [r12541] src/ezsignals.h:
	  Commit header with three macros that help with signal handling.
	  Will be actually used later. Now, all new files are in.

2007-02-24 21:59  moritz

	* [r12540] configure.in:
	  Let the configure script set a (hard-coded, for now) examples
	  installation directory. This will be made configurable later.

2007-02-24 21:50  moritz

	* [r12539] configure.in:
	  Add several checks that we need now, i.e. very soon.

2007-02-24 21:46  moritz

	* [r12538] configure.in:
	  AM_CONFIG_HEADER -> AC_CONFIG_HEADERS, and move config.h into
	  src/.

2007-02-24 21:44  moritz

	* [r12537] configure.in:
	  Autoconf 2.61 has a nice macro AC_USE_SYSTEM_EXTENSIONS. Use it,
	  depend on autoconf-2.61 for it and remove the annoying
	  _GNU_SOURCE and _XOPEN_SOURCE ... dung. Autoconf takes care of
	  this, and even checks for more useful stuff for us.

2007-02-24 21:37  moritz

	* [r12536] configure.in:
	  Generate a Makefile in doc/, and switch to AC_CONFIG_FILES.

2007-02-24 21:34  moritz

	* [r12535] configure.in:
	  Ezstream does not need libtool, so remove it. Remove other
	  redundant configure checks as well: AC_PROG_CC and AC_HEADER_STDC
	  are automatically checked in packages written in C, no need to do
	  it twice. This shaves a lot off configure runtime.

2007-02-24 21:29  moritz

	* [r12534] configure.in:
	  Start to incrementally merge configure.in changes by simply
	  shuffling code around a bit. No functional change, yet.

2007-02-24 21:19  moritz

	* [r12533] Makefile.am:
	  Hook up doc/ with the build, depend on automake 1.9 and remove
	  dist-zip for now. The latter will come back after testing on
	  Windows has been done.

2007-02-24 21:16  moritz

	* [r12532] autogen.sh:
	  Replace the autogen behemoth with something much simpler.
	  AC_PREREQ and AUTOMAKE_OPTIONS already take care of version
	  checks.

2007-02-24 21:12  moritz

	* [r12531] conf/Makefile.am, conf/ezstream_mp3.xml,
	  conf/ezstream_reencoding_example_mp3.xml,
	  conf/ezstream_reencoding_example_theora.xml,
	  conf/ezstream_reencoding_example_vorbis.xml,
	  conf/ezstream_vorbis.xml:
	  Clean up and install example configuration files.

2007-02-24 21:11  moritz

	* [r12530] README:
	  Commit rewritten README file.

2007-02-24 20:59  moritz

	* [r12529] AUTHORS:
	  Remove AUTHORS. Credits are in the man page.

2007-02-24 20:58  moritz

	* [r12528] INSTALL:
	  Add INSTALL file for those not familiar with the configure+make
	  dance. From autoconf-2.61.

2007-02-24 20:57  moritz

	* [r12527] src/Makefile.am, src/strlcat.c, src/strlcpy.c,
	  src/strlfctns.h:
	  Add files with safe strlc*() string functions, and hook all new
	  files into Makefile.am. Also let "make clean" clean up coredumps
	  and editor backup files.

2007-02-24 20:52  moritz

	* [r12526] doc, doc/Makefile.am, doc/ezstream.1.in:
	  Add ezstream man page.

2007-02-24 20:50  moritz

	* [r12525] src/playlist.c, src/playlist.h:
	  Add new playlist handling functions.

2007-02-24 20:49  moritz

	* [r12524] src/util.c, src/util.h:
	  Add new utility functions, for memory management. These do The
	  Right Thing and never return NULL.

2007-02-24 18:55  moritz

	* [r12521] configure.in:
	  Begin to incrementally merge my changes to Ezstream by bumping
	  the version number and shifting blame to me. This should keep
	  most of the history in my local CVS repository. There may be
	  temporary breakages where it doesn't build or package until I'm
	  done.

2005-12-14 21:40  oddsock

	* [r10593] win32/Makefile.am:
	  forgot to add the inno setup installer to the dist

2005-12-14 21:16  oddsock

	* [r10592] win32/ezstream.iss:
	  version bump

2005-12-14 21:14  oddsock

	* [r10590] ChangeLog:
	  added changelog

2005-12-14 21:13  oddsock

	* [r10589] conf/Makefile.am, configure.in, src/ezstream.c:
	  added some reconnect logic fixed a buffer overflow on large
	  id3tags use pclose for popen'd file handles

2005-01-05 00:38  oddsock

	* [r8612] README, conf/ezstream_m3u.xml, conf/ezstream_mp3.xml,
	  conf/ezstream_reencoding_example.xml,
	  conf/ezstream_reencoding_example_mp3.xml,
	  conf/ezstream_reencoding_example_theora.xml,
	  conf/ezstream_reencoding_example_vorbis.xml,
	  conf/ezstream_vorbis.xml, configure.in, src/ezstream.c,
	  win32/ezstream.dsp, win32/ezstream.dsw, win32/ezstream.iss:
	  cleanup of config files fixed reencoding bug on win32 bump to
	  version 0.2.0

2004-12-22 01:49  oddsock

	* [r8519] src/ezstream.c:
	  add passthorough support for unknown types

2004-07-19 03:48  oddsock

	* [r7171] src/configfile.c, win32/ezstream.dsp, win32/ezstream.iss:
	  some win32 compilation fixes

2004-07-19 03:12  oddsock

	* [r7170] README, conf/Makefile.am,
	  conf/ezstream_reencoding_example.xml, configure.in,
	  src/configfile.c, src/configfile.h, src/ezstream.c,
	  win32/ezstream.dsp:
	  Added reencoding capabilities to ezstream.

2004-07-16 04:02  oddsock

	* [r7152] win32/ezstream.dsp:
	  

2004-07-12 19:13  oddsock

	* [r7103] src/configfile.c, src/configfile.h, src/ezstream.c:
	  support for theora streams

2004-04-21 13:48  oddsock

	* [r6563] configure.in, src/.deps, src/ezstream.c:
	  added ability to send a signal (SIGHUP) which will re-read the
	  current playlist (m3u) that is being processed. When this
	  happens, ezstream will pick up from the last track that was
	  played.

2004-02-02 04:56  oddsock

	* [r5806] README:
	  stdin now working :)

2004-02-02 04:39  oddsock

	* [r5805] aclocal.m4, configure.in:
	  * version bump * remove unneeded file

2004-02-02 04:37  oddsock

	* [r5804] src/ezstream.c, win32/ezstream.dsp, win32/ezstream.iss:
	  * set read mode to binary for stdin on win32 * add libXML to
	  project file * bump version number

2004-01-30 17:19  oddsock

	* [r5800] ., AUTHORS, COPYING, Makefile.am, README, aclocal.m4,
	  autogen.sh, conf, conf/Makefile.am, conf/ezstream_m3u.xml,
	  conf/ezstream_mp3.xml, conf/ezstream_vorbis.xml, configure.in,
	  m4, m4/ac_config_libconfig_in.m4, m4/acx_pthread.m4, m4/ogg.m4,
	  m4/shout.m4, m4/vorbis.m4, m4/xiph_compiler.m4, m4/xiph_curl.m4,
	  m4/xiph_net.m4, m4/xiph_path_python.m4, m4/xiph_types.m4,
	  m4/xiph_xml2.m4, src, src/.deps, src/.deps/configfile.Po,
	  src/.deps/ezstream.Po, src/Makefile.am, src/configfile.c,
	  src/configfile.h, src/ezstream.c, src/getopt.c, src/getopt.h,
	  win32, win32/Makefile.am, win32/ezstream.dsp, win32/ezstream.dsw,
	  win32/ezstream.iss:
	  Initial revision

