From a4835dc943eacfdac043aa2d3f3ee671c8c45439 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96man?= Date: Mon, 29 Sep 2008 20:19:07 +0000 Subject: [PATCH] Add classic delay when reporting back failed authentication. --- htsp.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/htsp.c b/htsp.c index 9bdca919..4beddd05 100644 --- a/htsp.c +++ b/htsp.c @@ -502,6 +502,7 @@ htsp_read_loop(htsp_connection_t *htsp) const char *method, *username, *password; while(1) { + readmsg: if((r = htsp_read_message(htsp, &m, 0)) != 0) return r; @@ -518,9 +519,18 @@ htsp_read_loop(htsp_connection_t *htsp) (struct sockaddr *)htsp->htsp_peer, htsp_methods[i].privmask)) { - reply = htsmsg_create(); + pthread_mutex_unlock(&global_lock); + /* Classic authentication failed delay */ + sleep(1); + + reply = htsmsg_create(); htsmsg_add_u32(reply, "_noaccess", 1); + htsp_reply(htsp, m, reply); + + htsmsg_destroy(m); + goto readmsg; + } else { reply = htsp_methods[i].fn(htsp, m); }