--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/diet-pure-ftpd.patch Sun Jan 13 23:14:33 2008 +0100
@@ -0,0 +1,710 @@
+From bca72d17e958d2bce147147da167fa17a1cc43f7 Mon Sep 17 00:00:00 2001
+From: Tomas Zeman <tzeman@volny.cz>
+Date: Sun, 16 Dec 2007 12:14:44 +0100
+Subject: [PATCH] diet-pure-ftpd-1.0.21-1-i686:
+ *added
+
+---
+ source/dietlibc/diet-pure-ftpd/FrugalBuild | 39 ++
+ source/dietlibc/diet-pure-ftpd/pure-config.pl | 121 ++++++
+ source/dietlibc/diet-pure-ftpd/pure-ftpd.conf | 435 +++++++++++++++++++++
+ source/dietlibc/diet-pure-ftpd/rc.pure-ftpd | 42 ++
+ source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po | 21 +
+ 5 files changed, 658 insertions(+), 0 deletions(-)
+ create mode 100644 source/dietlibc/diet-pure-ftpd/FrugalBuild
+ create mode 100644 source/dietlibc/diet-pure-ftpd/pure-config.pl
+ create mode 100644 source/dietlibc/diet-pure-ftpd/pure-ftpd.conf
+ create mode 100644 source/dietlibc/diet-pure-ftpd/rc.pure-ftpd
+ create mode 100644 source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po
+
+diff --git a/source/dietlibc/diet-pure-ftpd/FrugalBuild b/source/dietlibc/diet-pure-ftpd/FrugalBuild
+new file mode 100644
+index 0000000..0165876
+--- /dev/null
++++ b/source/dietlibc/diet-pure-ftpd/FrugalBuild
+@@ -0,0 +1,39 @@
++# Maintainer: Tomas Zeman <tzeman@volny.cz>
++
++branch=diet
++pkgorig=pure-ftpd
++pkgname=$branch-$pkgorig
++pkgver=1.0.21
++pkgrel=1
++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 --git a/source/dietlibc/diet-pure-ftpd/pure-config.pl b/source/dietlibc/diet-pure-ftpd/pure-config.pl
+new file mode 100644
+index 0000000..1f8c28e
+--- /dev/null
++++ b/source/dietlibc/diet-pure-ftpd/pure-config.pl
+@@ -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 --git a/source/dietlibc/diet-pure-ftpd/pure-ftpd.conf b/source/dietlibc/diet-pure-ftpd/pure-ftpd.conf
+new file mode 100644
+index 0000000..df983a2
+--- /dev/null
++++ b/source/dietlibc/diet-pure-ftpd/pure-ftpd.conf
+@@ -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 --git a/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd
+new file mode 100644
+index 0000000..61746ef
+--- /dev/null
++++ b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd
+@@ -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 --git a/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po
+new file mode 100644
+index 0000000..b987340
+--- /dev/null
++++ b/source/dietlibc/diet-pure-ftpd/rc.pure-ftpd-hu.po
+@@ -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"
+--
+1.5.3.4
+