kinit(1) ignores weight/priority in SRV records, uses alphanumerical sorting

Originator:cbernstein
Number:rdar://15973385 Date Originated:2014-02-03
Status:Open Resolved:
Product:OS X Product Version:10.9.1 (13B42)
Classification: Reproducible:Always
 
Consider the following SRV records in DNS:

_kerberos._udp.REALM has SRV record 20 0 88 ahost.
_kerberos._udp.REALM has SRV record 10 0 88 bhost.
_kerberos._udp.REALM has SRV record 0 0 88 chost.
_kerberos._udp.REALM has SRV record 30 0 88 dhost.

kinit should first try to talk to 'chost', then 'bhost', then 'ahost',
then 'dhost'.  Instead, it will try to talk to 'ahost', then 'bhost',
then 'chost', then 'dhost'.

Steps to Reproduce:
1. create multiple SRV records with different weights/priorities
2. kinit


Expected Results:
kinit should first try to talk to 'chost', then 'bhost', then 'ahost',
then 'dhost'.

Actual Results:
will try to talk to 'ahost', then 'bhost', then 'chost', then 'dhost'.

Version:
Darwin laptop.local 13.0.0 Darwin Kernel Version 13.0.0: Thu Sep 19
22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64


Notes:


Configuration:
$ kinit --version
kinit (Heimdal 1.5.1apple1)
Copyright 1995-2011 Kungliga Tekniska Högskolan
Send bug-reports to heimdal-bugs@h5l.org

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!