Add error pointer to raop_init, today API breaks in so many ways
authorJuho Vähä-Herttua <juhovh@iki.fi>
Thu, 31 May 2012 17:56:35 +0000 (20:56 +0300)
committerJuho Vähä-Herttua <juhovh@iki.fi>
Thu, 31 May 2012 17:56:35 +0000 (20:56 +0300)
src/include/raop.h
src/lib/raop.c
src/test/example.c

index 7328348bfa8256e5d1882c8a20af4b83a85bb8d6..275ac40c20210db0878ad7550edfc5ff7ff65aae 100644 (file)
@@ -43,8 +43,8 @@ struct raop_callbacks_s {
 };
 typedef struct raop_callbacks_s raop_callbacks_t;
 
-RAOP_API raop_t *raop_init(int max_clients, raop_callbacks_t *callbacks, const char *pemkey);
-RAOP_API raop_t *raop_init_from_keyfile(int max_clients, raop_callbacks_t *callbacks, const char *keyfile);
+RAOP_API raop_t *raop_init(int max_clients, raop_callbacks_t *callbacks, const char *pemkey, int *error);
+RAOP_API raop_t *raop_init_from_keyfile(int max_clients, raop_callbacks_t *callbacks, const char *keyfile, int *error);
 
 RAOP_API void raop_set_log_level(raop_t *raop, int level);
 RAOP_API void raop_set_log_callback(raop_t *raop, raop_log_callback_t callback, void *cls);
index 4f4f5185a30e28f979765a205c32c95c5aec6fe0..65830d6483e432b9bd55bc62c4c6caa39e15e4db 100644 (file)
@@ -349,7 +349,7 @@ conn_destroy(void *ptr)
 }
 
 raop_t *
-raop_init(int max_clients, raop_callbacks_t *callbacks, const char *pemkey)
+raop_init(int max_clients, raop_callbacks_t *callbacks, const char *pemkey, int *error)
 {
        raop_t *raop;
        httpd_t *httpd;
@@ -414,7 +414,7 @@ raop_init(int max_clients, raop_callbacks_t *callbacks, const char *pemkey)
 }
 
 raop_t *
-raop_init_from_keyfile(int max_clients, raop_callbacks_t *callbacks, const char *keyfile)
+raop_init_from_keyfile(int max_clients, raop_callbacks_t *callbacks, const char *keyfile, int *error)
 {
        raop_t *raop;
        char *pemstr;
@@ -422,7 +422,7 @@ raop_init_from_keyfile(int max_clients, raop_callbacks_t *callbacks, const char
        if (utils_read_file(&pemstr, keyfile) < 0) {
                return NULL;
        }
-       raop = raop_init(max_clients, callbacks, pemstr);
+       raop = raop_init(max_clients, callbacks, pemstr, error);
        free(pemstr);
        return raop;
 }
index e857642da911b77cfd288e906a010f10bdc4efce..393b7820efef6ea0dc7f5d1ee9a893dffe7a4817 100644 (file)
@@ -92,7 +92,7 @@ main(int argc, char *argv[])
        raop_cbs.audio_flush = audio_flush;
        raop_cbs.audio_destroy = audio_destroy;
 
-       raop = raop_init_from_keyfile(10, &raop_cbs, "airport.key");
+       raop = raop_init_from_keyfile(10, &raop_cbs, "airport.key", NULL);
        raop_set_log_level(raop, RAOP_LOG_DEBUG);
        raop_set_log_callback(raop, &raop_log_callback, NULL);
        raop_start(raop, &raop_port, hwaddr, sizeof(hwaddr), "test");