Divert Name lookups

This file is used to override calls made by an application to look up names. So if not wanting to set up address records on a SRV enabled name, compile this as gcc -shared -Wl,-soname,libdivert.so -o libdivert.so libdivert.c -ldl -fPIC

This allows the application with known problems to connect, and does not affect other applications, so SRV problems with them remain noticable. It works by intercepting calls to functions like getaddrinfo

To use…

Set environment variables to load it and choose the server to connect.

This would make ekiga look up sip.example.net if it tries to connect directly to example.net

env example.net=sip.example.net FLASH_ALSA_DEVICE=plug:SLAVE=jack LD_PRELOAD=/somewhere/libdivert.so ekiga

Therefore if your SIP server is on sip.example.net and there is no desire to add address records to example.net it will still connect.

Regarding FLASH_ALSA_DEVICE

It is possible to set up the ~/.asoundrc file to pull the default sound device from an environment variable, so that the audio device for programs that cannot be configured to use anything other than the default device and the hardware drivers can be set, such as env FLASH_ALSA_DEVICE=plug:SLAVE=jack ekiga

FLASH_ALSA_DEVICE is chosen as Adobe Flash reads it to find the ALSA device to play to.

The variable is read when the program uses ALSA, allowing different programs to use different devices.

pcm.!default { @func getenv vars [ FLASH_ALSA_DEVICE ] default "cards.pcm.default" }

pcm.jack {
        type jack
        playback_ports {
               0 alsa_pcm:playback_1
               1 alsa_pcm:playback_2
        }
        capture_ports {
               0 alsa_pcm:capture_1
               1 alsa_pcm:capture_2
        }
}

SRV is implemented here.

This server does provide SRV records for most of the addresses intended to be websites.

Try dig _http._tcp.www.wensley.org.uk SRV.

I avoid an IP address at the root of the domain, as this activates fallback mechanisms in applications and therefore prevents fixing underlying problems. So, it is needed to pick a subdomain for the site, so may as well use the www.