Late last week I discovered an issue in the SIPE plugin for Adium (which lets you connect to MS Lync messaging servers using Adium, instead of the native Lync client). The issue will prevent users who have very long passwords (somewhere north of 25 characters seems to be the magic number) from successfully authenticating.
I discovered this shortly after changing a password, as my new one was roughly 32 characters long. I found I could log in everywhere except for Lync. I investigated various versions of Adium / SIPE to see if the issues were related to an update to the software (didn’t make sense, as I had just been logged in – but I checked anyway). I also checked the Lync client to see if I could connect there (so as to determine if the issue was client side or server side). Lync happily logged me in.
So then I tried a shorter password, one around ~28 characters. That, too, failed. A third attempt at a password – one that rings in right at 25 characters – seems to have done the trick and is able to connect.
I’ve been looking at the code in the sip-sec-ntml.c file included with the pidgin-sipe-adium plugin source core, but haven’t yet figured out what’s causing the issue. Admittedly my C skills are a bit rusty.
Unfortunately, I didn’t think to get debug logs while the issue was happening, and I don’t have a test environment I can use to easily grab those – so I’ve not been able to post a bug report on the SIPE plugin bug tracker. I’m hopeful I can figure out the issue and post something along with the suggested solution.