Commit Graph

1426 Commits

Author SHA1 Message Date
Julien BLACHE
2127aff906 Use a single log domain on DPRINTF() calls 2009-05-05 20:28:40 +02:00
Julien BLACHE
803ca7e59f Rename foreground to background and change logic accordingly 2009-05-05 17:54:20 +02:00
Julien BLACHE
10bb9dec57 Remove useless daapd.h 2009-05-05 16:22:11 +02:00
Julien BLACHE
d2999aafec Add missing stdint.h include to ff-dbstruct.h 2009-05-05 16:21:39 +02:00
Julien BLACHE
c85f9ed7dd Move main event base extern declaration to mdns_avahi.c where it's used 2009-05-05 16:10:49 +02:00
Julien BLACHE
524bdd3f0d Remove old config framwork include and wrappers 2009-05-05 16:10:44 +02:00
Julien BLACHE
9fce6d7abd Use new config framework in main.c 2009-05-05 15:53:36 +02:00
Julien BLACHE
c1a2bf6fcf Remove conf_*() usage in DB module 2009-05-05 15:45:48 +02:00
Julien BLACHE
ed0ff0c136 Unlink PID file on exit 2009-05-04 17:51:42 +02:00
Julien BLACHE
be4286b2e8 Remove -export-dynamic libtool flag now that we don't have plugins anymore 2009-05-04 17:48:31 +02:00
Julien BLACHE
8e14495bc2 Remove unused struct tag_stats (STATS) 2009-05-03 13:33:16 +02:00
Julien BLACHE
d1449a875b Get rid of the global struct tag_config (CONFIG) config 2009-05-03 13:32:00 +02:00
Julien BLACHE
2530c3512b Rename webface_cb() to httpd_gen_cb() 2009-05-03 12:26:01 +02:00
Julien BLACHE
cd6f87401a Rename struct stream_chunk to struct stream_ctx 2009-05-03 12:19:04 +02:00
Julien BLACHE
ed7c848702 Remove I/O layer 2009-05-03 12:10:17 +02:00
Julien BLACHE
07fb43ca8c Remove I/O layer init/deinit 2009-05-03 12:09:25 +02:00
Julien BLACHE
f0ca987d78 Replace io_* routines by standard I/O functions 2009-05-03 12:08:14 +02:00
Julien BLACHE
e8843a99aa Remove util.[ch] 2009-05-03 11:38:32 +02:00
Julien BLACHE
1e0ffb6808 Remove use of util_* routines, last user 2009-05-03 11:37:30 +02:00
Julien BLACHE
9ef8acfa28 Remove old webserver 2009-05-03 11:20:12 +02:00
Julien BLACHE
6aca074f82 Remove plugin infrastructure 2009-05-03 11:20:07 +02:00
Julien BLACHE
baf529dbf2 Remove plugins directory 2009-05-03 11:20:02 +02:00
Julien BLACHE
2be04db4d2 Remove RSP output plugin 2009-05-03 11:16:58 +02:00
Julien BLACHE
ef1c2b2b89 Remove DAAP output plugin 2009-05-03 11:16:58 +02:00
Julien BLACHE
89eead66f6 Remove ssc-ffmpeg plugin 2009-05-03 11:16:58 +02:00
Julien BLACHE
417b5e0ce3 Remove ssc-script plugin 2009-05-03 11:16:58 +02:00
Julien BLACHE
81cb0efa81 Stop loading plugins, we don't need plugins anymore 2009-05-03 11:16:58 +02:00
Julien BLACHE
2fb7537346 Register RSP and DAAP services in main() 2009-05-03 11:16:58 +02:00
Julien BLACHE
c76c8165ce Enable httpd on the configured port 2009-05-03 11:16:58 +02:00
Julien BLACHE
d46bb295c5 Disable old webserver 2009-05-03 11:16:58 +02:00
Julien BLACHE
a1afb0d390 Use evhttp_send_reply_chunk_with_cb() to stream files
This evhttp extension makes it possible to schedule chunks one after
the other when (part of) the previous chunk has been written to the
client.
2009-05-03 11:16:58 +02:00
Julien BLACHE
7a37732658 Add a variant of evhttp_send_reply_chunk() with a callback on evhttp_write_buffer()
evhttp_write_buffer() used by evhttp_send_reply_chunk() can take callback
executed when (part of) the buffer has been written. Using this callback to
schedule the next chunk avoids buffering large amounts of data in memory.
2009-05-03 11:16:58 +02:00
Julien BLACHE
1d152decf7 Use evhttp_request->fail_cb to stop streaming if the client closes the connection
This is an extension to evhttp. Without this, we cannot know that the client
closes the connection, and we keep pushing chunks while the underlying
evhttp_request has been freed, leading to a segfault.
2009-05-03 11:16:57 +02:00
Julien BLACHE
1ffcbdae27 Add a fail_cb to evhttp_request for connection failures
The callback will be executed if a failure (timeout, read error) is detected
on an incoming connection.

This can be used to detect a client closing the connection while engaged in a
chunked reply and actively pushing chunks to the client. Without this
notification, it is impossible to know if/when a connection gets closed and
react appropriately (ie. stop pushing chunks) resulting in a segfault.
2009-05-03 11:16:57 +02:00
Julien BLACHE
e4fe084619 Use embedded evhttp 2009-05-03 11:16:57 +02:00
Julien BLACHE
6bce4e08ca Import evhttp from libevent 1.4.10 2009-05-03 11:16:57 +02:00
Julien BLACHE
c9868175fd Implement URI encoding quirk for iTunes and Roku
iTunes and Roku devices do not encode + as %2B in the query string and
do not encode space as + either in the query string (though at least the
Roku encode space as %20 everywhere). This needs to be worked around or
browse queries fail to parse because + was decoded as space when the query
really needs a + character.
2009-05-03 11:16:57 +02:00
Julien BLACHE
09ef188d90 Add authentication to web interface, RSP and DAAP 2009-05-03 11:16:57 +02:00
Julien BLACHE
dc68de86dd Add HTTP Basic auth support 2009-05-03 11:16:57 +02:00
Julien BLACHE
cd636cf42d Add base64 decoding routine 2009-05-03 11:16:57 +02:00
Julien BLACHE
7a601d7daa Enable streaming of transcoded content 2009-05-03 11:16:57 +02:00
Julien BLACHE
2c2498b6b4 Add transcoding infrastructure 2009-05-03 11:16:57 +02:00
Julien BLACHE
22092f555b Add L_XCODE log domain
Log domain for anything transcoding-related.
2009-05-03 11:16:57 +02:00
Julien BLACHE
e5cc417e96 Add DJB hash function to misc.[ch] and use it 2009-05-03 11:16:51 +02:00
Julien BLACHE
0a1c4545dc Move safe_ato[il]() to misc.[ch] 2009-04-30 14:46:37 +02:00
Julien BLACHE
91414c10d7 Use a hashtable for dmap fields lookup
The hashtable is built around an AVL tree and the DJB hash function;
the AVL tree is built at init time and the init routine checks for
collisions.
2009-04-30 13:57:40 +02:00
Julien BLACHE
c071a58c3c Wire up DAAP support 2009-04-30 13:57:40 +02:00
Julien BLACHE
00876facde Introduce DAAP protocol implementation
Same restrictions as RSP at the moment:
 - no transcoding
 - no authentication
2009-04-30 13:57:34 +02:00
Julien BLACHE
f332f992aa Document HTTP client quirks known to mt-daapd 2009-04-28 18:00:27 +02:00
Julien BLACHE
651d946cc2 Implement RSP streaming. 2009-04-28 18:00:27 +02:00
Julien BLACHE
f05a55e7fc Implement HTTP chunked streaming
Transcoding is not supported yet.

In the current state of affairs, we will crash if the client closes the
connection before the tranfser is done. This is a limitation of evhttp,
it is not possible to detect this condition. This will need to be fixed
in evhttp.
2009-04-28 18:00:21 +02:00
Julien BLACHE
5e8275a998 Wire up RSP support 2009-04-25 23:02:21 +02:00
Julien BLACHE
718631bab5 Introduce RSP protocol implementation
Lacks a couple of things:
 - actual streaming
 - transcoding
 - authentication
2009-04-25 23:02:15 +02:00
Julien BLACHE
21209bd040 Make sp_parse() second argument (term) const
The term (filter) argument is strdup()'d and that copy gets destroyed by
the parsing.
2009-04-25 16:27:59 +02:00
Julien BLACHE
6ed689d1c9 Move FILTER_TYPE_* definitions to smart-parser.h, where they belong 2009-04-25 16:27:59 +02:00
Julien BLACHE
29db6de1bb Fixup prototype for db_enum_fetch_row()
Second argument is actually a pointer to a pointer to a struct
db_media_file_info, and not a simple pointer.

That code sucks. Plain and simple. Will be taken out and shot at the
earliest occasion. Someone badly needs to take "Pointers 101", among
a lot of other 101 courses. Sigh.
2009-04-25 16:27:58 +02:00
Julien BLACHE
bdcb5b88dc Rename struct tag_packed_m3ufile and struct tag_packed_mp3file 2009-04-25 16:27:58 +02:00
Julien BLACHE
5fc698c94f Add L_RSP log domain 2009-04-25 16:27:58 +02:00
Julien BLACHE
9d1cd9117f Enable new HTTP server alongside the old webserver 2009-04-25 16:27:58 +02:00
Julien BLACHE
095350e6eb Introduce new evhttp-based HTTP server 2009-04-25 16:27:47 +02:00
Julien BLACHE
c9494a898e Add L_HTTPD for new evhttp-based HTTPd implementation 2009-04-24 15:45:44 +02:00
Julien BLACHE
7afc55307d Change prototype and return values for new file scanners 2009-04-24 15:45:44 +02:00
Julien BLACHE
92362068c6 Remove old file scanner (mp3-scanner) 2009-04-24 15:45:43 +02:00
Julien BLACHE
3a38e62f8a Remove/replace mp3-scanner.h include 2009-04-24 15:45:43 +02:00
Julien BLACHE
1a0e1731e4 Remove iTunes XML playlist parsing code 2009-04-24 15:45:43 +02:00
Julien BLACHE
69d6acad37 Remove support for iTunes XML playlist
No plans for OS X nor Windows in the near future, and those are most
probably useless on other platforms.
2009-04-24 15:45:43 +02:00
Julien BLACHE
831016bb05 Use new m3u scanner 2009-04-24 15:45:43 +02:00
Julien BLACHE
1a0f1317e2 Add rewritten scan_static_playlist() as scan_m3u_playlist()
Get rid of the I/O layer, better code.
2009-04-24 15:45:43 +02:00
Julien BLACHE
4a9d89c007 Rename struct tag_m3ufile into struct playlist_info 2009-04-24 15:45:43 +02:00
Julien BLACHE
bc5a3db08a Rename scan-url.c to filescanner_urlfile.c 2009-04-24 15:45:43 +02:00
Julien BLACHE
0a61b5a51d Rewrite .pls/.url file parser
Get rid of the I/O layer, ameliorate bitrate parsing, restructure code.
2009-04-24 15:45:33 +02:00
Julien BLACHE
1eaa3979e6 Add missing db_deinit() calls 2009-04-20 16:41:06 +02:00
Julien BLACHE
c4f8c7c254 Use new file scanner 2009-04-20 16:41:06 +02:00
Julien BLACHE
c0e3c1bc5f Introduce new file scanner
The new file scanner has inotify support and runs in its own thread, including
for performing the initial rescan.
2009-04-20 16:41:01 +02:00
Julien BLACHE
57c698fce9 Export scan_static_playlist() 2009-04-19 19:39:15 +02:00
Julien BLACHE
bbab963fe2 Use new conffile code in main.c; remove wrappers 2009-04-19 19:39:15 +02:00
Julien BLACHE
bacdddb82f Use -v for version information 2009-04-19 19:39:11 +02:00
Julien BLACHE
5e48a8bb6a Remove -k/kill_server option 2009-04-19 19:38:41 +02:00
Julien BLACHE
362db5003b Remove config file conversion code 2009-04-19 19:37:48 +02:00
Julien BLACHE
8e4b2db99e Export cfg structure 2009-04-19 19:37:47 +02:00
Julien BLACHE
e3ab6de328 Replace old config code, remove old code
Activate the new confuse-based config code, add compatibility functions
for the old config code.
2009-04-19 19:37:47 +02:00
Julien BLACHE
a17e23010a Introduce new confuse-based conffile support 2009-04-19 19:37:47 +02:00
Julien BLACHE
9f2e088d57 Add more .gitignore stuff 2009-04-19 19:37:47 +02:00
Julien BLACHE
e8c9a04376 Remove OS abstraction layer
Migrate daemon startup code in main.c, migrate functions with a single
callsite to that file. Remove setpgrp() usage in favor of setsid(), remove
configure check for setpgrp().
2009-04-19 19:37:42 +02:00
Julien BLACHE
9d026442b2 Remove alternate plugin load paths 2009-04-19 19:37:41 +02:00
Julien BLACHE
3ec2cc0f00 Stop the TXT record encoding madness
Use a proper string array to pass the TXT record fields, get rid of the
encoding stuff.

Changes the plugin API.
2009-04-19 19:37:41 +02:00
Julien BLACHE
2e2dbc6964 Free mDNS group entries in mdns_deinit() 2009-04-19 19:37:41 +02:00
Julien BLACHE
b3b66449bc Build the string list for the mDNS TXT record once in mdns_register
Instead of rebuilding the string list at every regitration, build it once
and for all in mdns_register().
2009-04-19 19:37:41 +02:00
Julien BLACHE
8718f856df Remove unused, unfinished, useless UPnP code 2009-04-19 19:37:41 +02:00
Julien BLACHE
6db32640ef Remove no-op os_deinit() 2009-04-19 19:37:41 +02:00
Julien BLACHE
54c01d3b57 Move signal processing to the main loop using signalfd 2009-04-19 19:37:41 +02:00
Julien BLACHE
0292b9c625 Fix memory leak 2009-04-19 19:37:41 +02:00
Julien BLACHE
39e5b11bec Remove old Avahi mDNS backend 2009-04-19 19:37:41 +02:00
Julien BLACHE
97faadf6dd Enable new mDNS backend 2009-04-19 19:37:35 +02:00
Julien BLACHE
97cb82faf7 Add new Avahi mDNS backend with libevent integration. 2009-04-08 14:57:34 +02:00
Julien BLACHE
8a351e5bf8 Manage explicit event bases 2009-04-08 14:57:29 +02:00
Julien BLACHE
02f960b25b Fix Avahi races
Switch from custom thread + SimplePoll to ThreadedPoll, ensuring proper
locking of the polling thread.
2009-04-07 14:03:13 +02:00
Julien BLACHE
df0013a166 Introduce libevent for running the main loop
Start the gradual libevent conversion.
2009-04-07 12:53:04 +02:00
Julien BLACHE
3b4e0d8f74 Add missing ; 2009-04-07 11:40:14 +02:00
Julien BLACHE
b3cffd491d Add and use io_urlencode() to replace %U format spec for io_open()
Stopgap to replace the %U modifier until something happens with the whole
io_* stuff.
2009-04-05 22:42:03 +02:00
Julien BLACHE
687be1cbb6 Remove compat.[ch] 2009-04-05 19:15:44 +02:00
Julien BLACHE
7098dfbab3 Fix various trivial compiler warnings 2009-04-05 19:03:29 +02:00
Julien BLACHE
ea36855793 Fix format specifiers for 64bit integers
Use "%" PRIu64 from inttypes.h instead of "%lld" which is incorrect on 64bit
platforms.
2009-04-05 18:54:59 +02:00
Julien BLACHE
f4721a6cec Add explicit -export-dynamic
mt-daapd needs an explicit -export-dynamic so its symbols are made visible
to the plugins at load time.
2009-04-05 18:54:59 +02:00
Julien BLACHE
081a13bbea Fix ffmpeg API breakage
avcodec_audio_decode() has been removed in favor of avcodec_decode_audio2();
output buffer size must be passed to the function.
2009-04-05 18:54:59 +02:00
Julien BLACHE
888bf11d2f Replace %U format by %s
%s format specifier means the string must be URL encoded. Replace it by a
simple %s for the time being until plans about the I/O layer become clearer.
2009-04-05 18:54:59 +02:00
Julien BLACHE
e318858d44 Fill in type & codectype for .url/.pls 2009-04-05 18:54:59 +02:00
Julien BLACHE
c2ffed5e2b Remove unused iconv-dependent code.
The code was mainly used by the MP3 scanner.
2009-04-05 18:54:59 +02:00
Julien BLACHE
d8a9772afc Remove/replace non-gcc compiler-specific defines and pragmas
Remove MSVC-specific defines and pragmas, use __attribute__((packed)) where
needed.
2009-04-05 18:54:58 +02:00
Julien BLACHE
3dd76cf9e9 Remove unneeded prototypes 2009-04-05 18:54:58 +02:00
Julien BLACHE
625ffd2112 Work around ffmpeg bugs in metadata support for some formats
Fall back to the legacy format-specific scanners for WMA, FLAC and Musepack,
as ffmpeg doesn't report metadata for FLAC nor Musepack and has bugs with
some WMA variants.
2009-04-05 18:54:58 +02:00
Julien BLACHE
3a53a068af Initialize ffmpeg in main()
ffmpeg needs to be initialized before scanning songs at startup. As a
consequence, the ffmpeg plugin does not need to call av_register_all()
itself anymore.
2009-04-05 18:54:58 +02:00
Julien BLACHE
c9107ed48c Remove unneeded id3tag.h include 2009-04-05 18:54:58 +02:00
Julien BLACHE
f14ba228ec Remove Ogg Vorbis file scanner 2009-04-05 18:54:58 +02:00
Julien BLACHE
056f788c99 Remove MP3 file scanner 2009-04-05 18:54:58 +02:00
Julien BLACHE
9f45181bb3 Remove AAC file scanner 2009-04-05 18:54:58 +02:00
Julien BLACHE
84a132d166 Remove WAV file scanner 2009-04-05 18:54:58 +02:00
Julien BLACHE
23802f1866 Remove AIFF file scanner 2009-04-05 18:54:58 +02:00
Julien BLACHE
a3e83775b3 Enable ffmpeg file scanner
Replace all file scanners with the new ffmpeg file scanner. Keep pls and
url exceptions.
2009-04-05 18:54:49 +02:00
Julien BLACHE
8dce7ee0f3 Add comments pertaining to the type, codectype and description fields
Better document the type, codectype and description fields, noting they
equivalent DAAP fields and usage/restrictions.
2009-04-05 10:24:10 +02:00
Julien BLACHE
10037ff7cf Rename struct tag_mp3file
That struct is badly named, rename it to struct media_file_info and keep
the typedef as-is for now.
2009-04-05 10:10:24 +02:00
Julien BLACHE
0187b5d405 Make ffmpeg mandatory 2009-04-05 10:06:03 +02:00
Julien BLACHE
f5dd1bec13 Add an ffmpeg-based file scanner
Use ffmpeg's (starting with SVN 20090301) new metadata API to extract
metadata from virtually all formats supported by ffmpeg. That will allow
to get rid of some dependencies and some open-coded routines that aren't
maintainable.
2009-04-05 09:51:40 +02:00
Julien BLACHE
2cb11e8f42 Fix typos in help output 2009-04-02 13:24:09 +02:00
Julien BLACHE
1b98e3c036 Fix Avahi mDNS backend
Fix Avahi polling:
 - use avahi_simple_poll_loop() in rend-avahi.c:rend_poll() instead
   of reinventing yet another type of wheel;
 - start RendezVous thread after daemonizing, so the thread actually
   runs after we've daemonized.

Also handle Avahi daemon restarts, as it's good practice and easy to do.

 ... And /that/, my friends, is how we do that ...
2009-04-02 13:22:23 +02:00
Julien BLACHE
464bd414a1 Properly guard bytes_written against NULL
ws_copyfile() can be called with bytes_copied == NULL but did not
check for this condition before using bytes_copied after an IO error,
leading to a segfault.
2009-04-02 13:17:16 +02:00
Julien BLACHE
46acba0edb Fix ilst atom parsing
Fix ilst children parsing; when parsing children, we're already 8 bytes
into the ilst atom, so take that into account.
2009-04-02 13:16:07 +02:00
Julien BLACHE
93a97956a0 Change return type to boolean
Use a boolean return type instead of returning -1 with an unsigned return type.
2009-04-02 13:14:54 +02:00
Neil Spring
7565b02229 Properly reset XML scanner state between scans
Fix indexing of multiple XML files by resetting path_found for each
XML file.
2009-04-02 13:10:19 +02:00
Chris Pitchford
54d441f57c Fix handling of URIs in io_open()
Fix io_open()'s handling of options in URI, fixing the "filenames with a
question mark are not scanned" bug.

Patch by Chris Pitchford, cpitchford on the Firefly forum.
2009-04-02 13:07:36 +02:00
Jeremy Kerr
7c1752d871 Fix a bad return value in ws_addarg()
Fix a bad return value in ws_addarg() when updating a header value,
leading the caller to believe an out of memory condition happened.
2009-04-02 13:01:19 +02:00
Nico Golde
567bd3ee03 Fix integer overflow, CVE-2008-1771
Fix integer overflow leading to heap-based buffer overflow causing a
remote Denial of Service and possibly allows to execute arbitrary code.
2009-04-02 12:59:31 +02:00
Nico Golde
5d227e85c5 Fixup taglib_tab_free_strings() invocation
Fixup taglib_tab_free_strings() invocation; the function never took an
argument to start with, so fix that up as it now breaks the build.
2009-04-02 12:29:49 +02:00
Julien BLACHE
b80b81adae Don't clobber LIBS with -ldl 2009-04-02 12:18:53 +02:00
Julien BLACHE
3a55c153b8 Move wavstreamer to tools 2009-04-02 12:18:47 +02:00
Julien BLACHE
023e034020 Don't clobber LDFLAGS with iconv 2009-04-02 11:42:39 +02:00
Julien BLACHE
1c97e73351 Remove embedded copy of getopt 2009-04-02 11:08:41 +02:00
Julien BLACHE
cfdb37c07c Remove Mac OS conditional code 2009-04-02 11:06:29 +02:00
Julien BLACHE
c3fb950737 Remove WIN32 conditional code 2009-04-02 11:04:33 +02:00
Julien BLACHE
b59f936390 Remove barely-used bsd-snprintf.[ch] 2009-04-01 19:26:19 +02:00
Julien BLACHE
fc8038de6b Get rid of unused restart.[ch] 2009-04-01 19:17:05 +02:00
Julien BLACHE
242d41fd0d Remove unused uici code 2009-04-01 19:16:28 +02:00
Julien BLACHE
d3b4d80284 Remove SVN keywords 2009-04-01 19:16:21 +02:00
Julien BLACHE
36a0217199 Use pkg-config for TagLib 2009-04-01 19:16:20 +02:00
Julien BLACHE
b4deba68b6 Use pkg-config for libFLAC
Don't use FLAC_CFLAGS because it contains -I/usr/lib/FLAC which breaks
anything using assert(), due to FLAC's own assert.h.
2009-04-01 19:16:20 +02:00
Julien BLACHE
22e646099a Use pkg-config for Ogg/Vorbis 2009-04-01 19:16:20 +02:00
Julien BLACHE
2fd4b744a7 Use pkg-config for id3tag 2009-04-01 19:16:20 +02:00
Julien BLACHE
5f682ca276 Remove unused SSL support
Unused, and anyway OpenSSL is not compatible with the GPL.
2009-04-01 19:16:20 +02:00
Julien BLACHE
7ce2e75859 Use pkg-config to check for libavcodec & libavformat 2009-04-01 19:16:20 +02:00
Julien BLACHE
2daa9835a3 Update includes for newer ffmpeg versions 2009-04-01 19:16:19 +02:00
Julien BLACHE
098ab7d736 Make SQL mandatory and sqlite3 the default (and only) backend 2009-04-01 19:16:19 +02:00
Julien BLACHE
c0d395b7f9 Remove unused NSLU2 flag 2009-04-01 19:16:19 +02:00
Julien BLACHE
eb5cccca06 Make MDNS mandatory and Avahi the default (and only) backend 2009-04-01 19:16:19 +02:00
Julien BLACHE
185864e799 Remove custom memory debug facility 2009-04-01 19:16:19 +02:00
Julien BLACHE
ca1c461419 Remove gdbm database backend 2009-04-01 19:16:19 +02:00
Julien BLACHE
1d71d95332 Remove x bit 2009-04-01 19:16:19 +02:00
Julien BLACHE
e2a31b40a2 Remove obsolete sqlite v2 SQL backend 2009-04-01 19:16:19 +02:00
Julien BLACHE
a278c5998c Remove non-Avahi mDNS backends 2009-04-01 19:16:13 +02:00
Julien BLACHE
3a8c7b3c41 Get rid of Apple's RendezVous mDNS implementation 2009-04-01 15:36:55 +02:00
Julien BLACHE
1ca30657ac Remove unneeded script 2009-04-01 15:36:55 +02:00
Julien BLACHE
b4fe0300b4 Remove test drivers 2009-04-01 15:36:37 +02:00
Julien BLACHE
180cc2eb5a Get rid of win32 code 2009-04-01 14:48:27 +02:00
Ron Pedde
f3d1caff93 Fix 3 large memory leaks 2007-10-29 05:48:42 +00:00
Ron Pedde
e842f38fce fix windows blocking socket issue, work around problem with temp update table not being seen by fetch thread during db update 2007-10-24 05:44:35 +00:00
Ron Pedde
c8d09bc310 Make rsp update session status, to help kick off rescans 2007-10-24 04:06:52 +00:00
Ron Pedde
d75e1f8d48 Update playcounts for transcoded files 2007-10-24 03:59:34 +00:00
Ron Pedde
a8b6d93c07 Add count value to smart playlists, closing #150 2007-10-23 04:52:25 +00:00
Ron Pedde
fffe34e5eb Fix bogus error messages on web config 2007-10-23 04:23:50 +00:00
Ron Pedde
60f8d1299f Fix wav scanning for wav files with more than two blocks (wmp wav files with LIST/INFO blocks) 2007-10-23 03:57:20 +00:00
Ron Pedde
ad5718bb9c Add DESCRIPTION tag as an alias for COMMENT in flac files 2007-10-23 03:43:17 +00:00
Ron Pedde
34a4bb998e Fix duration scanning for wav files 2007-10-23 03:37:51 +00:00
Ron Pedde
1292992f6f Fix for format string vulnerability, reported as UnprotectedHex.com advisory UPH-07-03 by nnp (no CVE yet) 2007-10-21 22:51:01 +00:00
Ron Pedde
e70f43e1ce Fix for remote DOS, reported as UnprotectedHex.com advisory UPH-07-02 by nnp (no CVE yet) 2007-10-21 22:45:32 +00:00
Ron Pedde
eb7b49d848 Fix for remote DOS, reported as UnprotectedHex.com advisory UPH-07-01 by nnp (no CVE yet) 2007-10-21 22:13:37 +00:00
Ron Pedde
31bbea6109 Win32 performance fix (WSAEWOULDBLOCK hack issue) 2007-10-19 03:35:24 +00:00
Ron Pedde
43c234e666 Add per-thread db handles to guard against SQLITE_MISUSE 2007-10-13 22:03:52 +00:00
Ron Pedde
6df87878a5 increased logging to debug wav streaming problem on win32/vista 2007-10-07 04:48:19 +00:00
Ron Pedde
aa7b98f214 Fix for iTunes 7 password prompt on movie playback 2007-10-07 04:39:30 +00:00
Ron Pedde
3caf85e221 Fix for crash on os/arch without va_copy 2007-10-02 03:15:21 +00:00
Ron Pedde
a921916f30 Tune down logging a bit more 2007-09-25 07:50:48 +00:00
Ron Pedde
208ef6b1f2 minor signed/unsigned cleanups 2007-09-25 06:15:47 +00:00
Ron Pedde
01c7d18758 io.c: Fix rebuffering issue on win32 (fixing #235)
webserver.c: Fix write error log messages.  Possible fix for crash on mipsel (uninitialized heap issue).
2007-09-23 10:14:51 +00:00
Ron Pedde
4966f4213e Fold the mp4 scanner into the aac scanner, fix the playlist issue, and the aac metadata parsing issue 2007-09-16 02:03:25 +00:00
Ron Pedde
854a99470c Fix problem with password protected libraries 2007-09-13 04:52:18 +00:00
Ron Pedde
5864fd8a15 Fix problem with line endings on m3u files 2007-09-13 04:27:47 +00:00
Ron Pedde
b082328a4d This should be the REAL freebsd socklen_t fix 2007-09-11 04:45:59 +00:00
Ron Pedde
196ac7b468 Version the plugins, to stop from loading old versions, plus fix up search paths for ipkg based installs 2007-09-11 04:29:52 +00:00
Ron Pedde
491d1038eb Fix for EOF problem without trailing linefeed as reported by evans02472 on the forums 2007-09-09 06:02:03 +00:00
Ron Pedde
2734480212 Freebsd fix for socklen_t problem reported in forums 2007-09-09 05:56:56 +00:00
Ron Pedde
9d9ce5ba7a fix win32 library loading issues. 2007-09-07 07:51:00 +00:00
Ron Pedde
effab02bc1 scan for new plugin path when not specified in config 2007-09-07 06:55:25 +00:00
Ron Pedde
06a107f116 Add debugging to try and find problems with EBADF on Sun Cobalt RaQ 2007-09-07 06:52:23 +00:00
Ron Pedde
64b8eb7e71 don't include iconv.h when building without iconv 2007-09-05 03:28:56 +00:00
Ron Pedde
9d9533a07a Win32 iconv fixes. 2007-09-04 07:34:18 +00:00
Ron Pedde
0be8f98a40 Allow --disable-iconv 2007-09-04 07:26:50 +00:00
Ron Pedde
9246bfe59e iconv fixes for linux 2007-09-04 05:11:43 +00:00
Ron Pedde
5e69ba1a35 add ff-plugin-events.h to dist package 2007-09-04 02:40:22 +00:00
Ron Pedde
9aaff066d3 Add codepage translation for non-utf8 id3v1 tags 2007-09-03 21:39:20 +00:00
Ron Pedde
00cbda5e95 deprecate general/playlist 2007-09-03 17:50:56 +00:00
Ron Pedde
839f500358 Fix re-write of config file by preserving line endings 2007-09-03 17:48:56 +00:00
Ron Pedde
cab9a1ecd0 Fix utf-16 problems in win32 and unix. 2007-08-31 05:23:16 +00:00
Ron Pedde
2f83ecb3fc fix stupid pointer bug 2007-08-30 05:42:59 +00:00
Ron Pedde
9d222abd4b Fix sys/time requirement in upnp.c 2007-08-30 05:36:06 +00:00
Ron Pedde
153e874bef Patch from Stephane Moreau to make apache rewrites easier 2007-08-27 00:57:47 +00:00
Ron Pedde
f2174b3173 Patch from Ian Burrell to move plugins from sysconfdit to libdir, as it Should Be 2007-08-27 00:55:17 +00:00
Ron Pedde
1ca5cef013 Fix windows open for non-latin files 2007-08-27 00:43:33 +00:00
Ron Pedde
d88132f6c9 use iconv for utf8/utf16 conversion, in preparation for codepage id3tags and file system conversion 2007-08-23 03:55:10 +00:00
Ron Pedde
f2be31595f add io_ functions for plugins 2007-08-18 01:15:51 +00:00
Ron Pedde
40956ee0f9 fix VA_COPY 2007-08-12 08:43:27 +00:00
Ron Pedde
17afc25676 linux fixes for new plugin arch 2007-08-12 06:30:00 +00:00
Ron Pedde
a90bb2ab10 Add io-errors.h and io-plugin.h to make dist 2007-08-11 04:41:21 +00:00
Ron Pedde
f40c75773a win32 fixes for new plugin model 2007-08-10 00:48:31 +00:00
Ron Pedde
57dded49f9 oops, forgot the plugin interface 2007-08-09 07:10:35 +00:00
Ron Pedde
0429230d00 remove function backpointers for dll plugins 2007-08-09 06:33:41 +00:00
Ron Pedde
366ae9913c Fix problems with ascii log files, also problems with WSAEWOULDBLOCK on send buffer/receive window full. 2007-08-06 05:18:01 +00:00
Ron Pedde
5cf869342b avoid re-entrant error logging to avoid deadlocks 2007-08-06 03:18:44 +00:00
Ron Pedde
a806dde1da Implement ascii line-ending conversion for windows 2007-08-05 04:43:25 +00:00
Ron Pedde
b108edbc52 fix excessive logging in mdns, and remove rdar tags 2007-08-05 04:09:12 +00:00
Ron Pedde
4f0b1f24e0 cleanups for io_ on win32. still not quite working right, some read or write errors when streaming files, but a strong "mostly works" 2007-08-01 06:32:15 +00:00
Ron Pedde
ca7beedde3 convert scan-wma to io_ functions 2007-08-01 06:21:53 +00:00
Ron Pedde
4b9b1fe177 merge ron-ssl branch back to trunk in preparation for windows cleanups, merge setup tweaks and credits language as well as update rend-posix from stable-aspl-free 2007-07-31 04:34:33 +00:00
Ron Pedde
f1cc5ca6fb Fix for missing upnp_uuid() 2007-05-18 02:27:29 +00:00
Ron Pedde
3ac4048b0d Fix wav scanner to allow both 16 and 18 byte 'fmt ' chunks, also allow for out-of-order WAVE chunks 2007-05-10 06:24:50 +00:00
Ron Pedde
7f5e364954 Add enough more UPnP discovery that it shows up on SoundBridge 2007-05-05 04:35:50 +00:00
Ron Pedde
648297e253 Finish (mostly) upnp discovery 2007-05-04 21:31:05 +00:00
Ron Pedde
0eba96d92a More UPnP work. Almost finished with discovery. 2007-05-03 03:30:30 +00:00
Ron Pedde
0115887492 Move split functions from conf to util 2007-05-03 00:28:14 +00:00
Ron Pedde
61f5e96ea7 Force a full rescan when the database version is too new 2007-05-03 00:18:25 +00:00
Ron Pedde
f3d5caedb1 Missing header 2007-05-03 00:10:10 +00:00
Ron Pedde
9ba5a51fdd Fix small race in registerhandler 2007-05-02 23:49:42 +00:00
Ron Pedde
360c7f945e Fix for win32 playlist dissapearing issue 2007-04-30 00:18:04 +00:00
Ron Pedde
29c4e25425 Minor auth fixes 2007-04-27 12:31:42 +00:00
Ron Pedde
0ade4784ff Fix stupid password bug 2007-04-19 03:46:40 +00:00
Ron Pedde
eedf20f7f2 More password handling 2007-04-19 03:19:57 +00:00
Ron Pedde
e9a08a6951 upnp updates, plus some password fixes 2007-04-19 03:00:00 +00:00
Ron Pedde
5be4c9d8a4 More simple upnp updates 2007-04-19 02:58:56 +00:00
Ron Pedde
c6a9009550 Oops, thinko on the playlist thing 2007-04-18 03:34:03 +00:00
Ron Pedde
a15eabbd76 Crank up debug a bit for handlers to help track down wl500g errors 2007-04-18 03:12:42 +00:00
Ron Pedde
5b38bc6d6c Solve the case of the missing playlists\! D'oh\! 2007-04-18 03:07:25 +00:00
Ron Pedde
d8ad7c7ebc Tune down auth logging a bit, increase debugging in ws handler to try and find wl500g problem 2007-04-16 21:31:56 +00:00
Ron Pedde
e8ff234550 Minor win32 fixes for S_ISDIR 2007-04-16 05:30:10 +00:00
Ron Pedde
fb86538d79 Add centralized auth handler for different user roles (currently admin and user), closing #225 and #220 2007-04-15 23:57:00 +00:00
Ron Pedde
29478fcca1 Remove regex functions from webserver, instead preferring path from root - fixes problems with bad regex in uclibc 2007-04-15 23:27:16 +00:00
Ron Pedde
096975abfe More UPnP work. Still doesn't show up in network neighborhood. Not quite sure why not, though. :) 2007-04-15 23:20:13 +00:00
Ron Pedde
a6b9099e01 Use S_ISDIR to determine file directoryishness 2007-04-15 20:36:00 +00:00
Ron Pedde
e991d1ec08 logging for bad passwords as suggested by mas 2007-04-13 23:31:57 +00:00
Ron Pedde
69ec57328e ifdef the upnp stuff in main 2007-04-13 23:31:22 +00:00
Ron Pedde
5e9d9a3f20 forgot upnp files 2007-04-13 21:38:05 +00:00
Ron Pedde
1f640234f5 start of UPnP functions 2007-04-13 21:37:42 +00:00
Ron Pedde
9ccc48eac9 uninitialized string error, found by Ron (the *other* ron) on the forums. 2007-04-12 18:34:09 +00:00