Thanks so far, Brian; I contacted Cary Audio last week, but did not
get a reply.  All they did was switch off the server which had
firmware downloads, but I was able to pull a mirror of it.

It looks like Cary Audio outsourced the MPD related work to a Chinese
contractor who didn't know or care about copyright.

On 2018/01/31 03:33, Brian Luczkiewicz <br...@roonlabs.com> wrote:
> It was a surprise to me to learn that our code was being statically linked
> into mpd

Just in case Cary Audio denies it, here's an excerpt from "objdump -d
usr/bin/mpd":

 0019d32c <RAAT__client_status_to_string@@Base>:
   19d32c:       e2403d5d        sub     r3, r0, #5952   ; 0x1740
   19d330:       e92d4010        push    {r4, lr}
   19d334:       e2433030        sub     r3, r3, #48     ; 0x30
   19d338:       e3530ffa        cmp     r3, #1000       ; 0x3e8
   19d33c:       2a00001a        bcs     19d3ac 
<RAAT__client_status_to_string@@Base+0x80>
   19d340:       e3013771        movw    r3, #6001       ; 0x1771
   19d344:       e1500003        cmp     r0, r3
   19d348:       0a000014        beq     19d3a0 
<RAAT__client_status_to_string@@Base+0x74>
   19d34c:       e3013772        movw    r3, #6002       ; 0x1772
   19d350:       e1500003        cmp     r0, r3
   19d354:       0a00000b        beq     19d388 
<RAAT__client_status_to_string@@Base+0x5c>
   19d358:       e3013770        movw    r3, #6000       ; 0x1770
   19d35c:       e1500003        cmp     r0, r3
   19d360:       0a00000b        beq     19d394 
<RAAT__client_status_to_string@@Base+0x68>
   19d364:       e59f3064        ldr     r3, [pc, #100]  ; 19d3d0 
<RAAT__client_status_to_string@@Base+0xa4>
   19d368:       e300221a        movw    r2, #538 ; 0x21a
   19d36c:       e59f1060        ldr     r1, [pc, #96]   ; 19d3d4 
<RAAT__client_status_to_string@@Base+0xa8>
   19d370:       e59f0060        ldr     r0, [pc, #96]   ; 19d3d8 
<RAAT__client_status_to_string@@Base+0xac>
   19d374:       e08f3003        add     r3, pc, r3
   19d378:       e08f1001        add     r1, pc, r1
   19d37c:       e28330c0        add     r3, r3, #192    ; 0xc0
   19d380:       e08f0000        add     r0, pc, r0
   19d384:       ebfa0e4c        bl      20cbc <__assert_fail@plt>
   19d388:       e59f004c        ldr     r0, [pc, #76]   ; 19d3dc 
<RAAT__client_status_to_string@@Base+0xb0>
   19d38c:       e08f0000        add     r0, pc, r0
   19d390:       e8bd8010        pop     {r4, pc}
   19d394:       e59f0044        ldr     r0, [pc, #68]   ; 19d3e0 
<RAAT__client_status_to_string@@Base+0xb4>
   19d398:       e08f0000        add     r0, pc, r0
   19d39c:       e8bd8010        pop     {r4, pc}
   19d3a0:       e59f003c        ldr     r0, [pc, #60]   ; 19d3e4 
<RAAT__client_status_to_string@@Base+0xb8>
   19d3a4:       e08f0000        add     r0, pc, r0
   19d3a8:       e8bd8010        pop     {r4, pc}
   19d3ac:       e59f3034        ldr     r3, [pc, #52]   ; 19d3e8 
<RAAT__client_status_to_string@@Base+0xbc>
   19d3b0:       e3a02f85        mov     r2, #532 ; 0x214
   19d3b4:       e59f1030        ldr     r1, [pc, #48]   ; 19d3ec 
<RAAT__client_status_to_string@@Base+0xc0>
   19d3b8:       e59f0030        ldr     r0, [pc, #48]   ; 19d3f0 
<RAAT__client_status_to_string@@Base+0xc4>
   19d3bc:       e08f3003        add     r3, pc, r3
   19d3c0:       e08f1001        add     r1, pc, r1
   19d3c4:       e28330c0        add     r3, r3, #192    ; 0xc0
   19d3c8:       e08f0000        add     r0, pc, r0
   19d3cc:       ebfa0e3a        bl      20cbc <__assert_fail@plt>


This matches the source code in your SDK's raat/raat_client.c.
0x1770, 0x1771 and 0x1772 are RAAT__CLIENT_STATUS_NETWORK_ERROR and so
on.

The contractor forgot to disable assertions for the release build, and
it looks like compiler optimizations were disabled.
_______________________________________________
mpd-devel mailing list
mpd-devel@musicpd.org
http://mailman.blarg.de/listinfo/mpd-devel

Reply via email to