我正在尝试使用svn协议连接到我们公司的svn。它使用“LOGIN PLAIN”作为认证机制。我使用macport安装subversion 1.8.3。但是,它不支持这两种身份验证机制。它报告“svn:E210007:无法协商认证机制”。
我带了差不多一天,最后我发现它可能是sasl2模块的问题。但我不知道如何解决它。谁能帮助我? 非常感谢
这是我的调试信息
$/opt/local/bin/svn --version
....
* ra_svn : Module for accessing a repository using the svn network protocol. - with Cyrus SASL authentication
...
#/opt/local/sbin/saslauthd -v
saslauthd 2.1.25
authentication mechanisms: getpwent kerberos5 pam rimap
看起来不支持login / plain。在我尝试添加LOGIN或PLAIN之后,它也会返回错误。
#/opt/local/sbin/saslauthd -a login
saslauthd[50249] :set_auth_mech : unknown authentication mechanism: login
但实际上该机制在ports / security / cyrus-sasl2 / Portfile中。
configure.args --mandir=${prefix}/share/man \
--with-openssl=${prefix} \
--with-dbpath=${prefix}/etc/sasldb2 \
--with-plugindir=${prefix}/lib/sasl2 \
--with-saslauthd=${prefix}/var/state/saslauthd \
--with-pwcheck=${prefix}/var/pwcheck \
--disable-macos-framework \
--enable-srp \
--enable-srp-setpass \
--enable-login \
--enable-ntlm \
--with-rc4=openssl
并且plain / login库都内置在/ opt / local / lib
中 $ls /opt/local/lib/sasl2/libplain.*
/opt/local/lib/sasl2/libplain.2.0.25.so /opt/local/lib/sasl2/libplain.2.so /opt/local/lib/sasl2/libplain.so
$ls /opt/local/lib/sasl2/liblogin.*
/opt/local/lib/sasl2/liblogin.2.0.25.so /opt/local/lib/sasl2/liblogin.2.so /opt/local/lib/sasl2/liblogin.so