[xiph-commits] r9928 - in icecast/branches/kh/icecast: . src
karl at svn.xiph.org
karl at svn.xiph.org
Thu Sep 1 17:47:15 PDT 2005
Author: karl
Date: 2005-09-01 17:47:11 -0700 (Thu, 01 Sep 2005)
New Revision: 9928
Modified:
icecast/branches/kh/icecast/NEWS
icecast/branches/kh/icecast/configure.in
icecast/branches/kh/icecast/src/auth.c
icecast/branches/kh/icecast/src/auth.h
Log:
sync up with trunk and bump version is kh17
Modified: icecast/branches/kh/icecast/NEWS
===================================================================
--- icecast/branches/kh/icecast/NEWS 2005-09-01 16:46:16 UTC (rev 9927)
+++ icecast/branches/kh/icecast/NEWS 2005-09-02 00:47:11 UTC (rev 9928)
@@ -20,6 +20,23 @@
. get feedback from people on listener auth via url, Stephen Nixon has done
some auth scripts that people can use at http://imux.net/icecast/
+2.2-kh17
+. fix double free bug with failed startup of relay
+. added per-mount max-listener-duration setting.
+. updated auth_url, POST update and option names
+. log xml/xsl errors via error log
+. fix hopefully last oddcast/connection thread related bug
+. added artwork=url to metadata update
+. updated docs (some sync-up with trunk)
+. max client limiter updated
+. sync with trunk
+ - pidfile created before changeowner
+ - close stdin/out/err if using -b
+ - win32 free bug, unix doesn't seem affected
+ - htpasswd segv bug when auth file is missing
+ - auth.xsl fixup
+ - mp3 metadata cleanup
+
2.2-kh16
. fixed segv when using oddcast DSP
. master/slave streamlist is now isolated in its own thread, so should not
Modified: icecast/branches/kh/icecast/configure.in
===================================================================
--- icecast/branches/kh/icecast/configure.in 2005-09-01 16:46:16 UTC (rev 9927)
+++ icecast/branches/kh/icecast/configure.in 2005-09-02 00:47:11 UTC (rev 9928)
@@ -1,4 +1,4 @@
-AC_INIT([Icecast], [2.2-kh16], [karl at xiph.org])
+AC_INIT([Icecast], [2.2-kh17], [karl at xiph.org])
AC_PREREQ(2.54)
AC_CONFIG_SRCDIR(src/main.c)
Modified: icecast/branches/kh/icecast/src/auth.c
===================================================================
--- icecast/branches/kh/icecast/src/auth.c 2005-09-01 16:46:16 UTC (rev 9927)
+++ icecast/branches/kh/icecast/src/auth.c 2005-09-02 00:47:11 UTC (rev 9928)
@@ -86,8 +86,10 @@
} while (0);
+ thread_mutex_lock (&mountinfo->auth->lock);
client->auth = mountinfo->auth;
client->auth->refcount++;
+ thread_mutex_unlock (&mountinfo->auth->lock);
}
@@ -109,13 +111,19 @@
if (authenticator == NULL)
return;
+ thread_mutex_lock (&authenticator->lock);
authenticator->refcount--;
if (authenticator->refcount)
+ {
+ thread_mutex_unlock (&authenticator->lock);
return;
+ }
if (authenticator->free)
authenticator->free (authenticator);
xmlFree (authenticator->type);
+ thread_mutex_unlock (&authenticator->lock);
+ thread_mutex_destroy (&authenticator->lock);
free (authenticator);
}
@@ -149,7 +157,11 @@
if (client->auth->authenticate)
{
if (client->auth->authenticate (auth_user) != AUTH_OK)
+ {
+ auth_release (client->auth);
+ client->auth = NULL;
return;
+ }
}
if (auth_postprocess_client (auth_user) < 0)
INFO1 ("client %lu failed", client->con->id);
@@ -525,6 +537,7 @@
}
auth->type = xmlGetProp (node, "type");
get_authenticator (auth, options);
+ thread_mutex_create (&auth->lock);
while (options)
{
config_options_t *opt = options;
Modified: icecast/branches/kh/icecast/src/auth.h
===================================================================
--- icecast/branches/kh/icecast/src/auth.h 2005-09-01 16:46:16 UTC (rev 9927)
+++ icecast/branches/kh/icecast/src/auth.h 2005-09-02 00:47:11 UTC (rev 9928)
@@ -65,6 +65,7 @@
auth_result (*deleteuser)(struct auth_tag *auth, const char *username);
auth_result (*listuser)(struct auth_tag *auth, xmlNodePtr srcnode);
+ mutex_t lock;
int refcount;
int allow_duplicate_users;
More information about the commits
mailing list