---
name: bld
version: 0.3.4
origin: net/bld
comment: A blacklisting daemon
arch: freebsd:9:x86:64
www: http://www.online.redhate.org/bld/
maintainer: obld@r14.freenix.org
prefix: /usr/local
licenselogic: single
flatsize: 96242
desc: |
  BLD stands for "blacklist daemon" and is intended to serve a
  blacklist.  The blacklist is built by simply inserting IP addresses
  or by using submission rate limits based on a maximum number of
  submissions of the same IP address within a minimum time interval.
  You can build a BLD cluster by configuring the daemon to notify
  other similar daemon(s) every time an IP address is added to the
  blacklist.  BLD was primarily designed to fight against dictionnary-based
  spams (by making the MTA report to BLD any host that tries to send
  a mail to an unknown user) but can be used by any program.

  See homepage for more infos:

  WWW: http://www.online.redhate.org/bld/

  Olivier Beyssac <obld@r14.freenix.org>
categories: [net]
files:
  /usr/local/etc/bld/bld.conf.sample: 6ecc6e3973aa1a456b5b33a653835ad7867a08b3cc10c4ad77b358254ce37309
  /usr/local/etc/rc.d/bld: 9f03c2ac12aaee7e8f0562f78e2ebbf3f38e615e009477c79acd73e59e27946d
  /usr/local/man/man5/bld.conf.5.gz: ee5f1e4026ce33e4f6eb9b8ae345f7f4cbbb42cabb5d59c2e176b58e90c755bf
  /usr/local/man/man5/bld_acl.conf.5.gz: 14322ec519d8a681b662686375655949979ba4a62b33a0c1bf2c892c90948daa
  /usr/local/man/man5/bld_whitelist.conf.5.gz: a0a959b4490eefb155b4684226fe00959cd12f1b17fd0248789cd7cc6891af87
  /usr/local/man/man8/bld-mrtg.pl.8.gz: 74f00fadd3f74f3cf23ce61d1970ca5c77da0d6de6e844ffd3f7651a1da397ee
  /usr/local/man/man8/bld-pf_log.pl.8.gz: b7387488461a6398b1598790818023e6f6ee5ecde71de56b02cc398849a70072
  /usr/local/man/man8/bld-pf_policy.8.gz: 08a867f7c8c020e2885de9656aaf4d8c7fa5bd70a2268f9a2066010feef2ea6d
  /usr/local/man/man8/bld-will_spam_for_food.pl.8.gz: 8cb63b2158d2342335eab7626e2965aefbdca78c6d276550f53895d49014ded7
  /usr/local/man/man8/bld.8.gz: ef2502051ad749c5d7e44a2b6dc09778b0b88c6f2e1c6c56b83faa27a72c47db
  /usr/local/man/man8/blddecr.8.gz: 594e4cb913c663cc80570b82b123e263bb1bc691e3105a6c96ae3a5fa2b746bd
  /usr/local/man/man8/bldinsert.8.gz: 03e1379b2974271848d4f3e55a1fb3a0bdc7c338c0fce1a40f938c8c5571f56f
  /usr/local/man/man8/bldquery.8.gz: 8a3a67a00cf20f79fb0b88eda3c81c44bcb4d2ce5c607c281ac1a7576fce0456
  /usr/local/man/man8/bldread.8.gz: 5b53e9e52c5a5d24d60e638e7ebdb27f8c60d06c943497afd68d06edd7903c32
  /usr/local/man/man8/bldsubmit.8.gz: f31dc67b7d89bb5832f29940e0c489a0a6e57566e7243026ac498542ccdb08ab
  /usr/local/sbin/bld: af8ca1134d24b4245c84cefc643b2e673396a0a337b155595743a689f120c86c
  /usr/local/sbin/bld-mrtg.pl: d3eacabd8127b49297f59c3b9ae3b138e5b1c028fe461c0f80801048563529d8
  /usr/local/sbin/bld-pf_log.pl: f818fbc0d2cb558ef3ec362a1da98bc05d7524009d2d8a367fa60a57b925ed94
  /usr/local/sbin/bld-pf_policy: 5483013502a7caa8517c6f4160dfa33aa0c23a4689390d13b9a38f0f5a08acbd
  /usr/local/sbin/bld-pf_policy.pl: 0c4c795552f33ac982d528b3e7aa0858ac723e830b15ab95bcf4174e510f095e
  /usr/local/sbin/bld-will_spam_for_food.pl: 81298f4562a9e331b3c24819ec9209881fd1a41d5ea0d02c24a590c5e0e2e6b0
  /usr/local/sbin/blddecr: '-'
  /usr/local/sbin/bldinsert: '-'
  /usr/local/sbin/bldquery: '-'
  /usr/local/sbin/bldread: 4f205be05e0ba336b440928dd968a2cd1f9ebc7a5b8ff5450f992b8e03c70f1a
  /usr/local/sbin/bldsubmit: 2309832a16f9a81770cfbeaf6037fed67429799746a98e7915965bef7171c6fd
  /usr/local/share/doc/bld/README: befb0248548233003438678d39c9f2549323d7f091650da4a7e0b6860dbed9d1
  /usr/local/share/doc/bld/README.postfix: dd95e7f997d7234de8f2699aeb2bc9c7e919cea4ea007d3acfaf30369b297363
directories:
  /var/run/bld/: y
  /usr/local/share/doc/bld/: n
  /usr/local/etc/bld/: y
scripts:
  post-install: |
    cd /usr/local
  pre-deinstall: |
    cd /usr/local
  post-deinstall: |
    cd /usr/local
  install: "#!/bin/sh\n\nif [ $2 != \"POST-INSTALL\" ]\n    then\n    exit\nfi\n\nvarrun=/var/run/bld\nlogfile=/var/log/bld.log\nuser=bld\ngroup=bld\nnewsyslog_conf=/etc/newsyslog.conf\nsyslog_conf=/etc/syslog.conf\nsyslog_pid=/var/run/syslog.pid\nnonexistent=/nonexistent\n\nask()
    {\n    local question default answer\n\n    question=$1\n    default=$2\n    if
    [ -z \"${PACKAGE_BUILDING}\" ]; then\n\tread -p \"${question} [${default}]? \"
    answer\n    fi\n    if [ x${answer} = x ]; then\n\tanswer=${default}\n    fi\n
    \   echo ${answer}\n}\n\nyesno() {\n    local dflt question answer\n\n    question=$1\n
    \   dflt=$2\n    while :; do\n\tanswer=$(ask \"${question}\" \"${dflt}\")\n\tcase
    \"${answer}\" in\n\t    [Yy]*)\t\treturn 0;;\n[Nn]*)\t\treturn 1;;\nesac\necho
    \"Please answer yes or no.\"\ndone\n}\n\nmake_account() {\n    local u g gcos
    homeopt home\n\n    u=$1\n    g=$2\n    gcos=$3\n    homeopt=${4:+\"-d $4\"}\n\n
    \   if pw group show \"${g}\" >/dev/null 2>&1; then\n\techo \"You already have
    a group \\\"${g}\\\", so I will use it.\"\n    else\n\techo \"You need a group
    \\\"${g}\\\".\"\n\tpw groupadd ${g} || exit\n\techo \"Done.\"\n    fi\n    \n
    \   if pw user show \"${u}\" >/dev/null 2>&1; then\n\techo \"You already have
    a user \\\"${u}\\\", so I will use it.\"\n    else\n\techo \"You need a user \\\"${u}\\\".\"\n\tpw
    useradd ${u} -g ${g} -h - ${homeopt} \\\n\t    -s $nonexistent -c \"${gcos}\"
    || exit\n\techo \"Done.\"\n    fi\n\n    if [ x\"$homeopt\" = x ]; then\n\teval
    home=~${u}\n\tif [ ! -d \"${home}\" ]; then\n\t    mkdir -p ${home}/.cvsup ||
    exit\n\t    touch ${home}/.cvsup/auth || exit\n\t    chown -R ${u}:${g} ${home}
    || exit\n\t    chmod -R go= ${home} || exit\n\tfi\n    fi\n}\n\nif [ ! -d \"${varrun}\"
    ]\n    then\n    mkdir ${varrun} || exit\nfi\n\necho \"\"\nmake_account ${user}
    ${group} \"Blacklist Daemon\" \"$nonexistent\"\nchmod 700 ${varrun}\nchown bld
    ${varrun}\n\nif grep -q \"^[^#]*${facility}.*$logfile\" $syslog_conf; then\n    echo
    -n \"It looks like you already have some logging set up, so I \"\n    echo \"will
    use it.\"\nelse\n    echo \"Setting up server logging in \\\"$syslog_conf\\\".\"\n
    \   cat <<EOF >>$syslog_conf\n!bld\n*.*\t\t\t\t\t\t$logfile\nEOF\n\nif [ ! -f
    $logfile ]; then\n    echo \"Creating \\\"$logfile\\\".\"\n    cp /dev/null $logfile\nfi\n\nif
    [ -f $syslog_pid ]; then\n    echo \"Giving syslogd a kick in the pants.\"\n    kill
    -HUP $(cat $syslog_pid)\nfi\n\necho \"Adding bld log entry to \\\"$newsyslog_conf\\\".\"\ncat
    <<EOF >>$newsyslog_conf\n$logfile\t\t\t664  7    *    24    Z\nEOF\necho \"Done.\"\nfi\n\n#
    Compatibility from v0.2.4 port\nfor i in bld_acl.conf bld_whitelist.conf\ndo\n
    \ if [ -f ${PKG_PREFIX}/etc/$i ]\n      then\n      if [ -f ${PKG_PREFIX}/etc/bld/$i
    ]\n\t  then\n\t  echo \"WARNING: You have a $i configuration file in two directories:\"\n\t
    \ echo \"${PKG_PREFIX}/etc and ${PKG_PREFIX}/etc/bld\"\n\t  echo \"You must use
    ${PREFIX}/etc/bld/$i\"\n      else\n\t  echo \"You seem to have a $i configuration
    file in ${PKG_PREFIX}/etc\"\n\t  echo \"Copying it to ${PKG_PREFIX}/etc/bld\"\n\t
    \ cp ${PKG_PREFIX}/etc/$i ${PKG_PREFIX}/etc/bld\n\t  echo \"You should clean the
    old ${PKG_PREFIX}/etc/$i\"\n      fi\n  fi\ndone\n"
