From: Tomas Zeman <tzeman@volny.cz>
Date: Sun, 16 Dec 2007 12:14:44 +0100
diet-pure-ftpd
diff -r 8153a8594677 source/dietlibc/diet-pure-ftpd/FrugalBuild
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/source/dietlibc/diet-pure-ftpd/FrugalBuild Wed Feb 15 15:27:06 2012 +0100
@@ -0,0 +1,39 @@
+# Maintainer: Tomas Zeman <tzeman@volny.cz>
+
+branch=diet
+pkgorig=pure-ftpd
+pkgname=$branch-$pkgorig
+pkgver=1.0.21
+pkgrel=2
+pkgdesc="A free, secure, production-quality and standard-conformant FTP server"
+url="http://www.pureftpd.org/"
+depends=('perl')
+conflicts=($pkgorig)
+provides=($pkgorig)
+backup=('etc/pure-ftpd.conf')
+archs=('i686')
+up2date="lynx -dump $url |grep Version|sed 's/.*n \(.*\) h.*/\1/'"
+source=(ftp://ftp.pureftpd.org/pub/$pkgorig/releases/$pkgorig-$pkgver.tar.bz2 \
+ pure-config.pl pure-ftpd.conf rc.$pkgorig rc.$pkgorig-hu.po)
+sha1sums=('1405ff2b9b9c3616c4e390eb99779884173a3347' \
+ '274bf6399afa4fbb6cb8593181c103e3ff7f1070' \
+ '7c6b89a0dcefdd96e2da943ec4b21a9d952d86eb' \
+ '2a0b5d5151251deb129c061a78fa5eca5525e99e' \
+ '1a12dbfaa9d2d5914b7a1db040d5d6ced71cd659')
+
+build()
+{
+ export CC="diet -v gcc -Os -nostdinc"
+ export LD="diet -v gcc -s -static"
+ Fcd $pkgorig-$pkgver
+ ./configure --with-largefile --with-ftpwho --with-quotas \
+ --with-ratios --with-puredb --with-altlog --with-throttling \
+ --with-privsep --with-tls
+ make || Fdie
+ make prefix=$Fdestdir/usr install
+ install -D -m755 ../rc.pure-ftpd $Fdestdir/etc/rc.d/rc.pure-ftpd || Fdie
+ install -D -m644 ../pure-ftpd.conf $Fdestdir/etc/pure-ftpd.conf || Fdie
+ install -D -m755 ../pure-config.pl $Fdestdir/usr/sbin/pure-config.pl || Fdie
+ Ffile /etc/pure-ftpd.conf
+ Fexe /usr/sbin/pure-config.pl
+}
diff -r 8153a8594677 source/dietlibc/diet-pure-ftpd/pure-config.pl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/source/dietlibc/diet-pure-ftpd/pure-config.pl Wed Feb 15 15:27:06 2012 +0100
@@ -0,0 +1,121 @@
+#! /usr/bin/perl
+
+# (C) 2001-2004 Aristotle Pagaltzis
+# derived from code (C) 2001-2002 Frank Denis and Matthias Andree
+
+use strict;
+
+my ($conffile, @flg) = @ARGV;
+
+my $PUREFTPD;
+-x && ($PUREFTPD=$_, last) for qw(
+ ${exec_prefix}/sbin/pure-ftpd
+ /usr/local/pure-ftpd/sbin/pure-ftpd
+ /usr/local/pureftpd/sbin/pure-ftpd
+ /usr/local/sbin/pure-ftpd
+ /usr/sbin/pure-ftpd
+);
+
+my %simple_switch_for = (
+ IPV4Only => "-4",
+ IPV6Only => "-6",
+ ChrootEveryone => "-A",
+ BrokenClientsCompatibility => "-b",
+ Daemonize => "-B",
+ VerboseLog => "-d",
+ DisplayDotFiles => "-D",
+ AnonymousOnly => "-e",
+ NoAnonymous => "-E",
+ DontResolve => "-H",
+ AnonymousCanCreateDirs => "-M",
+ NATmode => "-N",
+ CallUploadScript => "-o",
+ AntiWarez => "-s",
+ AllowUserFXP => "-w",
+ AllowAnonymousFXP => "-W",
+ ProhibitDotFilesWrite => "-x",
+ ProhibitDotFilesRead => "-X",
+ AllowDotFiles => "-z",
+ AutoRename => "-r",
+ AnonymousCantUpload => "-i",
+ LogPID => "-1",
+ NoChmod => "-R",
+ KeepAllFiles => "-K",
+ CreateHomeDir => "-j",
+ NoRename => "-G",
+ CustomerProof => "-Z",
+ NoTruncate => "-0",
+);
+
+my %string_switch_for = (
+ SyslogFacility => "-f",
+ FortunesFile => "-F",
+ ForcePassiveIP => "-P",
+ Bind => "-S",
+ AnonymousBandwidth => "-t",
+ UserBandwidth => "-T",
+ TrustedIP => "-V",
+ AltLog => "-O",
+ PIDFile => "-g",
+);
+
+my %numeric_switch_for = (
+ MaxIdleTime => "-I",
+ MaxDiskUsage => "-k",
+ TrustedGID => "-a",
+ MaxClientsNumber => "-c",
+ MaxClientsPerIP => "-C",
+ MaxLoad => "-m",
+ MinUID => "-u",
+ TLS => "-Y",
+);
+
+my %numpairb_switch_for = (
+ LimitRecursion => "-L",
+ PassivePortRange => "-p",
+ AnonymousRatio => "-q",
+ UserRatio => "-Q",
+);
+
+my %numpairc_switch_for = (
+ Umask => "-U",
+ Quota => "-n",
+ PerUserLimits => "-y",
+);
+
+my %auth_method_for = (
+ LDAPConfigFile => "ldap",
+ MySQLConfigFile => "mysql",
+ PGSQLConfigFile => "pgsql",
+ PureDB => "puredb",
+ ExtAuth => "extauth",
+);
+
+my $simple_switch = qr/(@{[join "|", keys %simple_switch_for ]})\s+yes/i;
+my $string_switch = qr/(@{[join "|", keys %string_switch_for ]})\s+(\S+)/i;
+my $numeric_switch = qr/(@{[join "|", keys %numeric_switch_for ]})\s+(\d+)/i;
+my $numpairb_switch = qr/(@{[join "|", keys %numpairb_switch_for ]})\s+(\d+)\s+(\d+)/i;
+my $numpairc_switch = qr/(@{[join "|", keys %numpairc_switch_for ]})\s+(\d+):(\d+)/i;
+my $auth_method = qr/(@{[join "|", keys %auth_method_for ]})\s+(\S+)/i;
+
+die "Usage: pure-config.pl <configuration file> [extra options]\n"
+ unless defined $conffile;
+
+open CONF, "< $conffile" or die "Can't open $conffile: $!\n";
+
+!/^\s*(?:$|#)/ and (chomp, push @flg,
+ /$simple_switch/i ? ($simple_switch_for{$1}) :
+ /$string_switch/i ? ($string_switch_for{$1} . $2) :
+ /$numeric_switch/i ? ($numeric_switch_for{$1} . $2) :
+ /$numpairb_switch/i ? ($numpairb_switch_for{$1} . "$2:$3") :
+ /$numpairc_switch/i ? ($numpairc_switch_for{$1} . "$2:$3") :
+ /$auth_method/i ? ("-l" . "$auth_method_for{$1}:$2") :
+ /UnixAuthentication\s+yes/i ? ("-l" . "unix") :
+ /PAMAuthentication\s+yes/i ? ("-l" . "pam") :
+ ()
+) while <CONF>;
+
+close CONF;
+
+print "Running: $PUREFTPD ", join(" ", @flg), "\n";
+exec { $PUREFTPD } ($PUREFTPD, @flg) or die "cannot exec $PUREFTPD: $!";
diff -r 8153a8594677 source/dietlibc/diet-pure-ftpd/pure-ftpd.conf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/source/dietlibc/diet-pure-ftpd/pure-ftpd.conf Wed Feb 15 15:27:06 2012 +0100
@@ -0,0 +1,435 @@
+############################################################
+# #
+# Configuration file for pure-ftpd wrappers #
+# #
+############################################################
+
+# If you want to run Pure-FTPd with this configuration
+# instead of command-line options, please run the
+# following command :
+#
+# /usr/sbin/pure-config.pl /usr/etc/pure-ftpd.conf
+#
+# Please don't forget to have a look at documentation at
+# http://www.pureftpd.org/documentation.shtml for a complete list of
+# options.
+
+# Cage in every user in his home directory
+
+ChrootEveryone yes
+
+
+
+# If the previous option is set to "no", members of the following group
+# won't be caged. Others will be. If you don't want chroot()ing anyone,
+# just comment out ChrootEveryone and TrustedGID.
+
+# TrustedGID 100
+
+
+
+# Turn on compatibility hacks for broken clients
+
+BrokenClientsCompatibility no
+
+
+
+# Maximum number of simultaneous users
+
+MaxClientsNumber 50
+
+
+
+# Fork in background
+
+Daemonize yes
+
+
+
+# Maximum number of sim clients with the same IP address
+
+MaxClientsPerIP 8
+
+
+
+# If you want to log all client commands, set this to "yes".
+# This directive can be duplicated to also log server responses.
+
+VerboseLog no
+
+
+
+# List dot-files even when the client doesn't send "-a".
+
+DisplayDotFiles yes
+
+
+
+# Don't allow authenticated users - have a public anonymous FTP only.
+
+AnonymousOnly no
+
+
+
+# Disallow anonymous connections. Only allow authenticated users.
+
+NoAnonymous yes
+
+
+
+# Syslog facility (auth, authpriv, daemon, ftp, security, user, local*)
+# The default facility is "ftp". "none" disables logging.
+
+SyslogFacility ftp
+
+
+
+# Display fortune cookies
+
+# FortunesFile /usr/share/fortune/zippy
+
+
+
+# Don't resolve host names in log files. Logs are less verbose, but
+# it uses less bandwidth. Set this to "yes" on very busy servers or
+# if you don't have a working DNS.
+
+DontResolve yes
+
+
+
+# Maximum idle time in minutes (default = 15 minutes)
+
+MaxIdleTime 15
+
+
+
+# LDAP configuration file (see README.LDAP)
+
+# LDAPConfigFile /etc/pureftpd-ldap.conf
+
+
+
+# MySQL configuration file (see README.MySQL)
+
+# MySQLConfigFile /etc/pureftpd-mysql.conf
+
+
+# Postgres configuration file (see README.PGSQL)
+
+# PGSQLConfigFile /etc/pureftpd-pgsql.conf
+
+
+# PureDB user database (see README.Virtual-Users)
+
+# PureDB /etc/pureftpd.pdb
+
+
+# Path to pure-authd socket (see README.Authentication-Modules)
+
+# ExtAuth /var/run/ftpd.sock
+
+
+
+# If you want to enable PAM authentication, uncomment the following line
+
+# PAMAuthentication yes
+
+
+
+# If you want simple Unix (/etc/passwd) authentication, uncomment this
+
+# UnixAuthentication yes
+
+
+
+# Please note that LDAPConfigFile, MySQLConfigFile, PAMAuthentication and
+# UnixAuthentication can be used only once, but they can be combined
+# together. For instance, if you use MySQLConfigFile, then UnixAuthentication,
+# the SQL server will be asked. If the SQL authentication fails because the
+# user wasn't found, another try # will be done with /etc/passwd and
+# /etc/shadow. If the SQL authentication fails because the password was wrong,
+# the authentication chain stops here. Authentication methods are chained in
+# the order they are given.
+
+
+
+# 'ls' recursion limits. The first argument is the maximum number of
+# files to be displayed. The second one is the max subdirectories depth
+
+LimitRecursion 2000 8
+
+
+
+# Are anonymous users allowed to create new directories ?
+
+AnonymousCanCreateDirs no
+
+
+
+# If the system is more loaded than the following value,
+# anonymous users aren't allowed to download.
+
+MaxLoad 4
+
+
+
+# Port range for passive connections replies. - for firewalling.
+
+# PassivePortRange 30000 50000
+
+
+
+# Force an IP address in PASV/EPSV/SPSV replies. - for NAT.
+# Symbolic host names are also accepted for gateways with dynamic IP
+# addresses.
+
+# ForcePassiveIP 192.168.0.1
+
+
+
+# Upload/download ratio for anonymous users.
+
+# AnonymousRatio 1 10
+
+
+
+# Upload/download ratio for all users.
+# This directive superscedes the previous one.
+
+# UserRatio 1 10
+
+
+
+# Disallow downloading of files owned by "ftp", ie.
+# files that were uploaded but not validated by a local admin.
+
+AntiWarez yes
+
+
+
+# IP address/port to listen to (default=all IP and port 21).
+
+# Bind 127.0.0.1,21
+
+
+
+# Maximum bandwidth for anonymous users in KB/s
+
+# AnonymousBandwidth 8
+
+
+
+# Maximum bandwidth for *all* users (including anonymous) in KB/s
+# Use AnonymousBandwidth *or* UserBandwidth, both makes no sense.
+
+# UserBandwidth 8
+
+
+
+# File creation mask. <umask for files>:<umask for dirs> .
+# 177:077 if you feel paranoid.
+
+Umask 133:022
+
+
+
+# Minimum UID for an authenticated user to log in.
+
+MinUID 100
+
+
+
+# Allow FXP transfers for authenticated users.
+
+AllowUserFXP no
+
+
+
+# Allow anonymous FXP for anonymous and non-anonymous users.
+
+AllowAnonymousFXP no
+
+
+
+# Users can't delete/write files beginning with a dot ('.')
+# even if they own them. If TrustedGID is enabled, this group
+# will have access to dot-files, though.
+
+ProhibitDotFilesWrite no
+
+
+
+# Prohibit *reading* of files beginning with a dot (.history, .ssh...)
+
+ProhibitDotFilesRead no
+
+
+
+# Never overwrite files. When a file whoose name already exist is uploaded,
+# it get automatically renamed to file.1, file.2, file.3, ...
+
+AutoRename no
+
+
+
+# Disallow anonymous users to upload new files (no = upload is allowed)
+
+AnonymousCantUpload no
+
+
+
+# Only connections to this specific IP address are allowed to be
+# non-anonymous. You can use this directive to open several public IPs for
+# anonymous FTP, and keep a private firewalled IP for remote administration.
+# You can also only allow a non-routable local IP (like 10.x.x.x) to
+# authenticate, and keep a public anon-only FTP server on another IP.
+
+#TrustedIP 10.1.1.1
+
+
+
+# If you want to add the PID to every logged line, uncomment the following
+# line.
+
+#LogPID yes
+
+
+
+# Create an additional log file with transfers logged in a Apache-like format :
+# fw.c9x.org - jedi [13/Dec/1975:19:36:39] "GET /ftp/linux.tar.bz2" 200 21809338
+# This log file can then be processed by www traffic analyzers.
+
+# AltLog clf:/var/log/pureftpd.log
+
+
+
+# Create an additional log file with transfers logged in a format optimized
+# for statistic reports.
+
+# AltLog stats:/var/log/pureftpd.log
+
+
+
+# Create an additional log file with transfers logged in the standard W3C
+# format (compatible with most commercial log analyzers)
+
+# AltLog w3c:/var/log/pureftpd.log
+
+
+
+# Disallow the CHMOD command. Users can't change perms of their files.
+
+#NoChmod yes
+
+
+
+# Allow users to resume and upload files, but *NOT* to delete them.
+
+#KeepAllFiles yes
+
+
+
+# Automatically create home directories if they are missing
+
+#CreateHomeDir yes
+
+
+
+# Enable virtual quotas. The first number is the max number of files.
+# The second number is the max size of megabytes.
+# So 1000:10 limits every user to 1000 files and 10 Mb.
+
+#Quota 1000:10
+
+
+
+# If your pure-ftpd has been compiled with standalone support, you can change
+# the location of the pid file. The default is /var/run/pure-ftpd.pid
+
+#PIDFile /var/run/pure-ftpd.pid
+
+
+
+# If your pure-ftpd has been compiled with pure-uploadscript support,
+# this will make pure-ftpd write info about new uploads to
+# /var/run/pure-ftpd.upload.pipe so pure-uploadscript can read it and
+# spawn a script to handle the upload.
+
+#CallUploadScript yes
+
+
+
+# This option is useful with servers where anonymous upload is
+# allowed. As /var/ftp is in /var, it save some space and protect
+# the log files. When the partition is more that X percent full,
+# new uploads are disallowed.
+
+MaxDiskUsage 99
+
+
+
+# Set to 'yes' if you don't want your users to rename files.
+
+#NoRename yes
+
+
+
+# Be 'customer proof' : workaround against common customer mistakes like
+# 'chmod 0 public_html', that are valid, but that could cause ignorant
+# customers to lock their files, and then keep your technical support busy
+# with silly issues. If you're sure all your users have some basic Unix
+# knowledge, this feature is useless. If you're a hosting service, enable it.
+
+CustomerProof yes
+
+
+
+# Per-user concurrency limits. It will only work if the FTP server has
+# been compiled with --with-peruserlimits (and this is the case on
+# most binary distributions) .
+# The format is : <max sessions per user>:<max anonymous sessions>
+# For instance, 3:20 means that the same authenticated user can have 3 active
+# sessions max. And there are 20 anonymous sessions max.
+
+# PerUserLimits 3:20
+
+
+
+# When a file is uploaded and there is already a previous version of the file
+# with the same name, the old file will neither get removed nor truncated.
+# Upload will take place in a temporary file and once the upload is complete,
+# the switch to the new version will be atomic. For instance, when a large PHP
+# script is being uploaded, the web server will still serve the old version and
+# immediatly switch to the new one as soon as the full file will have been
+# transfered. This option is incompatible with virtual quotas.
+
+# NoTruncate yes
+
+
+
+# This option can accept three values :
+# 0 : disable SSL/TLS encryption layer (default).
+# 1 : accept both traditional and encrypted sessions.
+# 2 : refuse connections that don't use SSL/TLS security mechanisms,
+# including anonymous sessions.
+# Do _not_ uncomment this blindly. Be sure that :
+# 1) Your server has been compiled with SSL/TLS support (--with-tls),
+# 2) A valid certificate is in place,
+# 3) Only compatible clients will log in.
+
+# TLS 1
+
+
+
+# Listen only to IPv4 addresses in standalone mode (ie. disable IPv6)
+# By default, both IPv4 and IPv6 are enabled.
+
+# IPV4Only yes
+
+
+
+# Listen only to IPv6 addresses in standalone mode (ie. disable IPv4)
+# By default, both IPv4 and IPv6 are enabled.
+
+# IPV6Only yes
diff -r 8153a8594677 source/dietlibc/diet-pure-ftpd/rc.pure-ftpd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd Wed Feb 15 15:27:06 2012 +0100
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+# (c) 2006 Miklos Vajna <vmiklos@frugalware.org>
+# rc.pure-ftpd for FrugalWare
+# distributed under GPL License
+
+# chkconfig: 2345 60 50
+# description: Pure-FTPd is a ftp daemon, which is the program \
+# that answers incoming ftp service requests.
+
+source /lib/initscripts/functions
+TEXTDOMAIN=pure-ftpd
+TEXTDOMAINDIR=/lib/initscripts/messages
+
+actions=(restart start status stop)
+daemon=$"Pure-FTPd Server"
+
+pid="cat /var/run/pure-ftpd.pid 2> /dev/null"
+
+rc_start()
+{
+ start_msg
+ if [[ "$(eval $pid)" == "" ]] ; then
+ /usr/sbin/pure-config.pl /etc/pure-ftpd.conf &> /dev/null
+ ok $?
+ else
+ ok 999
+ fi
+}
+
+rc_stop()
+{
+ stop_msg
+ if [[ "$(eval $pid)" != "" ]] ; then
+ kill `cat /var/run/pure-ftpd.pid`
+ ok $?
+ else
+ ok 999
+ fi
+}
+
+rc_exec $1
diff -r 8153a8594677 source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po Wed Feb 15 15:27:06 2012 +0100
@@ -0,0 +1,21 @@
+# Hungarian translations for rc.pure-ftpd package.
+# Copyright (C) 2006 THE rc.pure-ftpd'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the rc.pure-ftpd package.
+# <vmiklos@frugalware.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: rc.pure-ftpd\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-02-21 13:18+0100\n"
+"PO-Revision-Date: 2006-02-21 13:18+0100\n"
+"Last-Translator: <vmiklos@frugalware.org>\n"
+"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: rc.pure-ftpd:16
+msgid "Pure-FTPd Server"
+msgstr "Pure-FTPd szerver"