LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1987|回复: 3

解决arch默认的kmail不能用smtp发信的问题

[复制链接]
发表于 2005-4-8 03:28:15 | 显示全部楼层 |阅读模式
Arch的kmail默认不能用smtp发信,总是报“sas(-4)”错误,网上搜到凌晨,才找到答案,原来是默认的cyrus-sasl包有问题,解决办法:
重新编译cyrus-sasl, ./configure 中加入-enable-login选项。
新的PKGBUILD

  1. # $Id: PKGBUILD,v 1.12 2005/03/07 21:39:42 tpowa Exp $
  2. # Maintainer: eric <eric@archlinux.org>
  3. # Modified by Kevin Qian <archlinux@sina.com> , 2005-4-7

  4. pkgname=cyrus-sasl
  5. pkgver=2.1.20
  6. pkgrel=2
  7. pkgdesc="SASL authentication daemon"
  8. url="http://asg.web.cmu.edu/cyrus/download/"
  9. depends=('pam' 'openssl' 'db' 'bash')
  10. backup=(etc/conf.d/saslauthd)
  11. source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/$pkgname-$pkgver.tar.gz \
  12.         saslauthd saslauthd.conf.d)
  13. md5sums=('268ead27f4ac39bcfe17d9e38e0f2977' '697dfb51206c398bc976ce9f4cffe72d' \
  14.   'dd12579e275a0924635e5ff003d301ab')

  15. build() {
  16.   cd $startdir/src/$pkgname-$pkgver
  17.   ./configure --prefix=/usr --enable-krb4=no --enable-login
  18.   /usr/bin/make || return 1
  19.   /usr/bin/make DESTDIR=$startdir/pkg install
  20.   /bin/mkdir -p $startdir/pkg/var/state/saslauthd
  21.   /bin/install -D -m755 ../saslauthd $startdir/pkg/etc/rc.d/saslauthd
  22.   /bin/install -D -m644 ../saslauthd.conf.d $startdir/pkg/etc/conf.d/saslauthd
  23. }
复制代码


saslauthd

  1. #!/bin/bash

  2. # source application-specific settings
  3. [ -f /etc/conf.d/saslauthd ] && . /etc/conf.d/saslauthd

  4. . /etc/rc.conf
  5. . /etc/rc.d/functions

  6. DAEMON_NAME="saslauthd"
  7. SASLAUTHD_BIN=/usr/sbin/saslauthd
  8. SASLAUTHD_PID=`pidof -o %PPID $SASLAUTHD_BIN`

  9. case "$1" in
  10.   start)
  11.     stat_busy "Starting $DAEMON_NAME"
  12.     [ -z "$SASLAUTHD_PID" ] && $SASLAUTHD_BIN $SASLAUTHD_OPTS
  13.     if [ $? -gt 0 ]; then
  14.       stat_fail
  15.       exit 1
  16.     else
  17.       echo `pidof -o %PPID $SASLAUTHD_BIN` > /var/run/$DAEMON_NAME.pid
  18.     fi
  19.     add_daemon $DAEMON_NAME
  20.     stat_done
  21.     ;;

  22.   stop)
  23.     stat_busy "Stopping $DAEMON_NAME"
  24.     [ ! -z "$SASLAUTHD_PID" ]  && kill $SASLAUTHD_PID &> /dev/null
  25.     if [ $? -gt 0 ]; then
  26.       stat_fail
  27.       exit 1
  28.     else
  29.       rm /var/run/$DAEMON_NAME.pid &> /dev/null
  30.     fi
  31.     rm_daemon $DAEMON_NAME
  32.     stat_done
  33.     ;;

  34.   restart)
  35.     $0 stop
  36.     sleep 1
  37.     $0 start
  38.     ;;

  39.   *)
  40.     echo "usage: $0 {start|stop|restart}"
  41. esac
  42. exit 0
  43. # vim: ts=2 sw=2 et ft=sh
复制代码


saslauthd.conf.d

  1. SASLAUTHD_OPTS="-m /var/state/saslauthd -a pam"
复制代码
发表于 2005-4-8 07:34:36 | 显示全部楼层
我看不如把md5验证去掉吧。复制粘贴恐怕又要变md5……
回复 支持 反对

使用道具 举报

发表于 2005-4-8 08:21:25 | 显示全部楼层
到bugs.archlinux.org举报一下BUG啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-13 11:31:00 | 显示全部楼层
新的cyrus-sasl解决了这个问题了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表