Update bindings and fix a bug in last commit, password support still has issues.
[deb_shairplay.git] / src / lib / raop.c
index 0eaace1bbc2c2fde1d2ef2fbeae6c6a78b3fdd27..9aafe65b18ef654e01303b7060e96629862cbae3 100644 (file)
@@ -439,18 +439,21 @@ raop_start(raop_t *raop, unsigned short *port, const char *hwaddr, int hwaddrlen
                return -1;
        }
 
-       /* Validate password */
-       if (strlen(password) > MAX_PASSWORD_LEN) {
-               return -1;
+       memset(raop->password, 0, sizeof(raop->password));
+       if (password) {
+               /* Validate password */
+               if (strlen(password) > MAX_PASSWORD_LEN) {
+                       return -1;
+               }
+
+               /* Copy password to the raop structure */
+               strncpy(raop->password, password, MAX_PASSWORD_LEN);
        }
 
        /* Copy hwaddr to the raop structure */
        memcpy(raop->hwaddr, hwaddr, hwaddrlen);
        raop->hwaddrlen = hwaddrlen;
 
-       /* Copy password to the raop structure */
-       strncpy(raop->password, password, MAX_PASSWORD_LEN);
-
        return httpd_start(raop->httpd, port);
 }