Permalink
Switch branches/tags
Nothing to show
Commits on Sep 18, 2013
  1. update contributors list

    albertz committed Sep 18, 2013
    i'm not the maintainer anymore.
Commits on Apr 3, 2013
  1. Revert "socketlib: properly fix the IPv6 to IPv4 fallback code."

    abrasive committed Apr 3, 2013
    This reverts commit 0847706, which
    caused failures as reported in github issue #189. Hopefully this does
    not break it for other users again...
Commits on Mar 16, 2013
  1. readme: some cleanup

    albertz committed Mar 16, 2013
Commits on Mar 13, 2013
  1. Merge pull request #184 from alfredperlstein/master

    splbio committed Mar 13, 2013
    Fixes for ipv4 networks and building on FreeBSD
    
    This was tested on 32bit Ubuntu 12.10.
Commits on Mar 12, 2013
  1. Merge pull request #181 from ffainelli/master

    ffainelli committed Mar 12, 2013
    socketlib: properly fix the IPv6 to IPv4 fallback code.
  2. Merge pull request #167 from mcoms/master

    albertz committed Mar 12, 2013
    Verbose mode logs incorrect IP / fix for paths with spaces in
Commits on Feb 22, 2013
  1. socketlib: properly fix the IPv6 to IPv4 fallback code.

    ffainelli committed Feb 22, 2013
    With the current code, we do have the following on a system where IPv6
    is completely disabled:
    
    socket(PF_INET6, SOCK_STREAM, IPPROTO_IP) = -1 EAFNOSUPPORT (Address
    family not supported by protocol)
    socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
    setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
    bind(3, {sa_family=AF_INET6, sin6_port=htons(5002), inet_pton(AF_INET6,
    "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1
    EAFNOSUPPORT (Address family not supported by protocol)
    
    The correct fix is to make a new call to getAddr() to ensure that the
    entire struct addrinfo will be correctly filled out again with AF_INET
    this time. This patch fixes.
Commits on Dec 23, 2012
  1. allow users to force ipv4 only.

    splbio committed Dec 23, 2012
    add flag '-4' to commands to force ipv4.
    this doesn't work yet because hairtunes unconditionally
    uses ipv6 if available.
Commits on Oct 19, 2012
Commits on Oct 2, 2012
  1. Merge pull request #166 from r10r/master

    albertz committed Oct 2, 2012
    Simple fix for passing the name in the init script
Commits on Sep 28, 2012
  1. Merge pull request #165 from jcheng5/patch-1

    albertz committed Sep 28, 2012
    Add Net::SDP dependency to INSTALL.md
Commits on Sep 27, 2012
  1. Merge pull request #152 from hendrikw82/master

    albertz committed Sep 27, 2012
    ios6 airplay announce message parsing bugfix  - Using Net:SDP
Commits on Sep 2, 2012
Commits on Jul 16, 2012
  1. Merge pull request #154 from grefab/master

    JH Laird
    JH Laird committed Jul 16, 2012
    Fixes issue #147.
Commits on Jul 15, 2012
  1. Initiating resync when receiving strange packet

    grefab committed Jul 15, 2012
    The packet type 0x56, sequence number 0, containing 4 bytes (the first two are the sequence number of the previously requested packet) initiates a resync. Not sure what this packet is supposed to do, but it occurs after heavy requesting resending of packets. Seems to be an out of sync situation, so resyncing is not the worst idea.
    
    Signed-off-by: Gregor Fabritius <gre@g0r.de>
  2. Fixed Issue #147: Segfaults on ShairPort version 0.05 C port

    grefab committed Jul 15, 2012
    When requesting resend of packets a lot, iOS sometimes sends a packet with type 0x56 (Reply to resend request), but with sequence number 0 and length == 4. This short length leads to memory corruption later on when processing the packet: alac_decode() expects at least 16 bytes for AES IV. Therefore the segfault.
    
    This fix ignores packets with length < 16, as seen in another implementation here:
    http://fossies.org/dox/mythtv-0.25.1/mythraopconnection_8cpp_source.html#l00555
    
    Please be aware that this just fixes the segfault. The suspicious packet seems to be an information of an out of sync situation, so it may deserve further attention.
    
    Signed-off-by: Gregor Fabritius <gre@g0r.de>
Commits on Jul 8, 2012
  1. Makeing it iOS 6 compatibel using Net:SDP

    hendrikw82
    hendrikw82 committed Jul 8, 2012
Commits on Jun 3, 2012
  1. Merge pull request #145 from choongng/master

    albertz committed Jun 3, 2012
    Play silence while audio is paused.
Commits on Apr 15, 2012
Commits on Feb 27, 2012
  1. Merge pull request #140 from timdoug/howl-support

    JH Laird
    JH Laird committed Feb 27, 2012
    Add support for mDNSPublish, from the howl zeroconf implementation.
  2. Add support for mDNSPublish, from the howl zeroconf implementation.

    timdoug committed Feb 27, 2012
    Howl hasn't been actively developed for some years now; their website 404s,
    and the Wayback Machine archive of 2008 says it's dead.[1] Yet it's still
    functional and is much smaller than dbus and avahi, which makes it useful
    for embedded systems. In fact, OpenWrt has not dropped support for the howl
    tools, and it's because of howl that I can fit a functional shairport and
    supporting libraries and kernel onto the 4MB of flash in a TP-LINK
    TL-WR703N.[2]
    
    [1] http://web.archive.org/web/20080917182117/http://www.porchdogsoft.com/products/howl/
    [2] http://embeddedtimes.blogspot.com/2011/09/tp-link-tl-wr703n-tiny-linux-capable.html
Commits on Feb 26, 2012
  1. Merge pull request #139 from toofishes/math

    JH Laird
    JH Laird committed Feb 26, 2012
    hairtunes: math and dithering optimisations
Commits on Feb 25, 2012
  1. hairtunes: implement a simple LCG-based RNG for dithering

    toofishes committed Feb 25, 2012
    We are calling out to libc's rand() function, which has significant
    overhead, especially since we are calling it 88200 times per second
    (2 channels * 44100 samples).
    
    Implement a very simple linear congruential generator in our code that
    is plenty good enough for dithering purposes, and small enough for the
    compiler to optimize and inline.
  2. hairtunes: simplify and reorganize some floating point operations

    toofishes committed Feb 25, 2012
    The math operations are all equivalent, but are simplified a bit for the
    benefit of processors with slower floating point performance.
    
    * Don't use float casts when we need to eventually convert to double
      precision anyway.
    * Use multiplication instead of division when possible.
Commits on Feb 24, 2012
  1. Merge pull request #138 from toofishes/cleanup

    albertz committed Feb 24, 2012
    Cleanup, optimization, and bug fixes
  2. Tabs to spaces conversion

    toofishes committed Feb 24, 2012
  3. Use static where appropriate in shairport.c

    toofishes committed Feb 24, 2012
    Most functions don't need to be public outside of this file, so move all
    the forward declarations out of shairport.h.