Compare commits

...

14 Commits

Author SHA1 Message Date
d790b9ed33 gc() + add patch from Markj 2025-11-12 03:13:37 +01:00
f8dbaa22a0 Port is "automaking" itself 2025-09-17 09:56:33 +02:00
fb9bdce10a 0mp port 2025-09-11 11:56:43 +07:00
ba38a2457f Grrr 2025-09-11 11:56:23 +07:00
afc6047814 D52168 2025-09-11 05:14:52 +02:00
7acb408e7d Samba 4.20 -> 4.22 2025-09-11 05:10:10 +02:00
52d3f86b37 Samba420 2025-09-11 05:09:25 +02:00
45d4e085cc Added kati port 2025-08-27 04:25:34 +02:00
0cf431dc97 Try 2025-08-22 16:26:15 +07:00
7bc33a4aa5 Original py-numpy 2025-08-19 10:44:30 +02:00
bc51ad4da5 Fixed sssd2 2025-08-08 04:20:20 +02:00
f8c2133b44 bump 2025-07-24 04:02:26 +02:00
f014c8afd9 Try a new patch 2025-07-24 04:00:59 +02:00
71e43c341a Use PATCHFILES 2025-07-24 03:42:43 +02:00
40 changed files with 402 additions and 1528 deletions

38
devel/kati/Makefile Normal file
View File

@ -0,0 +1,38 @@
PORTNAME= kati
MASTER_SITES= http://yhm1.klara.systems/kati/
PORTVERSION= 0.1
CATEGORIES= devel
MAINTAINER= allanjude@FreeBSD.org
COMMENT= Apache licensed replacement for GNU make
WWW= https://github.com/google/kati
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
#Kati is pretending to be gmake, so we can't USES gmake here
##USES= gmake
BUILD_DEPENDS+= gmake>=4.4.1:devel/gmake
CONFIGURE_ENV+= MAKE=gmake
MAKE_CMD= gmake
CONFLICTS_INSTALL= gmake
# PROJECT TOKEN:
# Name: kati-port-ci
# Token: glpat-m9-NUmzPFAWfDFhur99s
# Scopes: read_repository
#USE_GITLAB= yes
#GL_SITE= https://gitlab.klara.systems
#GL_SITE= https://xavier.beaudouin\@klarasystems.com:xMwy3nX7PTwUudg@gitlab.klara.systems
#GL_ACCOUNT= prettybsd
#GL_PROJECT= kati
#GL_TAGNAME= 1dc6868c0a4a6d17bf5527e06a5cb23cac5a6043
NO_CHECKSUM= yes
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/ckati ${STAGEDIR}${PREFIX}/bin/gmake
.include <bsd.port.mk>

1
devel/kati/pkg-descr Normal file
View File

@ -0,0 +1 @@
Kati is an apache licensed replacement for GNU make

1
devel/kati/pkg-plist Normal file
View File

@ -0,0 +1 @@
bin/gmake

View File

@ -0,0 +1,60 @@
PORTNAME= ca_root_nss
PORTVERSION= ${VERSION_NSS}
PORTREVISION= 4
CATEGORIES= security
MASTER_SITES= MOZILLA/security/nss/releases/${DISTNAME:tu:C/[-.]/_/g}_RTM/src
DISTNAME= nss-${VERSION_NSS}${NSS_SUFFIX}
MAINTAINER= ports-secteam@FreeBSD.org
COMMENT= Root certificate bundle from the Mozilla Project
LICENSE= MPL20
LICENSE_FILE= ${WRKSRC}/COPYING
USES= perl5 ssl:build
USE_PERL5= build
NO_ARCH= yes
WRKSRC_SUBDIR= nss
OPTIONS_DEFINE= ETCSYMLINK
OPTIONS_DEFAULT= ETCSYMLINK
OPTIONS_EXCLUDE_FreeBSD_15= ETCSYMLINK
OPTIONS_EXCLUDE_FreeBSD_16= ETCSYMLINK
OPTIONS_SUB= yes
ETCSYMLINK_DESC= Add symlinks to default bundle locations
ETCSYMLINK_CONFLICTS_INSTALL= ca-roots-[0-9]*
CERTDIR?= share/certs
PLIST_SUB+= CERTDIR=${CERTDIR}
VERSION_NSS= 3.115
CERTDATA_TXT_PATH= lib/ckfw/builtins/certdata.txt
BUNDLE_PROCESSOR= MAca-bundle.pl
CERTCTL_CMD?= /usr/sbin/certctl
SUB_FILES= MAca-bundle.pl pkg-deinstall pkg-install pkg-message
SUB_LIST= CERTCTL_CMD=${CERTCTL_CMD} VERSION_NSS=${VERSION_NSS}
do-build:
@${SETENV} PATH=${LOCALBASE}/bin:$${PATH} \
${PERL} ${WRKDIR}/${BUNDLE_PROCESSOR} \
< ${WRKSRC}/${CERTDATA_TXT_PATH} > \
${WRKDIR}/ca-root-nss.crt
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/${CERTDIR}
${INSTALL_DATA} ${WRKDIR}/ca-root-nss.crt ${STAGEDIR}${PREFIX}/${CERTDIR}
${MKDIR} ${STAGEDIR}${PREFIX}/etc/ssl
${LN} -sf ../../${CERTDIR}/ca-root-nss.crt ${STAGEDIR}${PREFIX}/etc/ssl/cert.pem.sample
do-install-ETCSYMLINK-on:
${MKDIR} ${STAGEDIR}${PREFIX}/openssl
${LN} -sf ../etc/ssl/cert.pem ${STAGEDIR}${PREFIX}/openssl/cert.pem
${MKDIR} ${STAGEDIR}/etc/ssl
${LN} -sf ../..${PREFIX}/etc/ssl/cert.pem ${STAGEDIR}/etc/ssl/cert.pem
.include <bsd.port.mk>

View File

@ -0,0 +1,3 @@
TIMESTAMP = 1755292668
SHA256 (nss-3.115.tar.gz) = ac2a47fb33bd79320159144e01c0d4af9a937a2d928c7c77ff06f5d9507861ab
SIZE (nss-3.115.tar.gz) = 76656357

View File

@ -0,0 +1,250 @@
##
## MAca-bundle.pl -- Regenerate ca-root-nss.crt from the Mozilla certdata.txt
##
## Rewritten in September 2011 by Matthias Andree to heed untrust
##
## Copyright (c) 2011, 2013 Matthias Andree <mandree@FreeBSD.org>
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
## modification, are permitted provided that the following conditions are
## met:
##
## * Redistributions of source code must retain the above copyright
## notice, this list of conditions and the following disclaimer.
##
## * Redistributions in binary form must reproduce the above copyright
## notice, this list of conditions and the following disclaimer in the
## documentation and/or other materials provided with the distribution.
##
## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
## FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
## COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
## INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
## BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
## LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
## CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
## ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
## POSSIBILITY OF SUCH DAMAGE.
use strict;
use Carp;
use MIME::Base64;
# configuration
print <<EOH;
##
## ca-root-nss.crt -- Bundle of CA Root Certificates
##
## This is a bundle of X.509 certificates of public Certificate
## Authorities (CA). These were automatically extracted from Mozilla's
## root CA list (the file `certdata.txt').
##
## It contains certificates trusted for server authentication.
##
## Extracted from nss-%%VERSION_NSS%%
##
EOH
my $debug = 0;
$debug++
if defined $ENV{'WITH_DEBUG'}
and $ENV{'WITH_DEBUG'} !~ m/(?i)^(no|0|false|)$/;
my %certs;
my %trusts;
# returns a string like YYMMDDhhmmssZ of current time in GMT zone
sub timenow()
{
my ($sec,$min,$hour,$mday,$mon,$year,undef,undef,undef) = gmtime(time);
return sprintf "%02d%02d%02d%02d%02d%02dZ", $year-100, $mon+1, $mday, $hour, $min, $sec;
}
sub printcert_plain($$)
{
my ($label, $certdata) = @_;
print "=== $label ===\n" if $label;
print
"-----BEGIN CERTIFICATE-----\n",
MIME::Base64::encode_base64($certdata),
"-----END CERTIFICATE-----\n\n";
}
sub printcert_info($$)
{
my (undef, $certdata) = @_;
return unless $certdata;
open(OUT, "|openssl x509 -text -inform DER -fingerprint")
|| die "could not pipe to openssl x509";
print OUT $certdata;
close(OUT) or die "openssl x509 failed with exit code $?";
}
sub printcert($$) {
my ($a, $b) = @_;
printcert_info($a, $b);
}
# converts a datastream that is to be \177-style octal constants
# from <> to a (binary) string and returns it
sub graboct()
{
my $data;
while (<>) {
last if /^END/;
my (undef,@oct) = split /\\/;
my @bin = map(chr(oct), @oct);
$data .= join('', @bin);
}
return $data;
}
sub grabcert()
{
my $certdata;
my $cka_label = '';
my $serial = 0;
my $distrust = 0;
while (<>) {
chomp;
last if ($_ eq '');
if (/^CKA_LABEL UTF8 "([^"]+)"/) {
$cka_label = $1;
}
if (/^CKA_VALUE MULTILINE_OCTAL/) {
$certdata = graboct();
}
if (/^CKA_SERIAL_NUMBER MULTILINE_OCTAL/) {
$serial = graboct();
}
if (/^CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL/)
{
my $distrust_after = graboct();
my $time_now = timenow();
if ($time_now >= $distrust_after) { $distrust = 1; }
if ($debug) {
printf STDERR "line $.: $cka_label ser #%d: distrust after %s, now: %s -> distrust $distrust\n", $serial, $distrust_after, timenow();
}
if ($distrust) {
return undef;
}
}
}
return ($serial, $cka_label, $certdata);
}
sub grabtrust() {
my $cka_label;
my $serial;
my $maytrust = 0;
my $distrust = 0;
while (<>) {
chomp;
last if ($_ eq '');
if (/^CKA_LABEL UTF8 "([^"]+)"/) {
$cka_label = $1;
}
if (/^CKA_SERIAL_NUMBER MULTILINE_OCTAL/) {
$serial = graboct();
}
if (/^CKA_TRUST_SERVER_AUTH CK_TRUST (\S+)$/)
{
if ($1 eq 'CKT_NSS_NOT_TRUSTED') {
$distrust = 1;
} elsif ($1 eq 'CKT_NSS_TRUSTED_DELEGATOR') {
$maytrust = 1;
} elsif ($1 ne 'CKT_NSS_MUST_VERIFY_TRUST') {
confess "Unknown trust setting on line $.:\n"
. "$_\n"
. "Script must be updated:";
}
}
}
if (!$maytrust && !$distrust && $debug) {
print STDERR "line $.: no explicit trust/distrust found for $cka_label\n";
}
my $trust = ($maytrust and not $distrust);
return ($serial, $cka_label, $trust);
}
my $untrusted = 0;
while (<>) {
if (/^CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE/) {
my ($serial, $label, $certdata) = grabcert();
if (defined $certs{$label."\0".$serial}) {
warn "Certificate $label duplicated!\n";
}
if (defined $certdata) {
$certs{$label."\0".$serial} = $certdata;
} else { # $certdata undefined? distrust_after in effect
$untrusted ++;
}
} elsif (/^CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST/) {
my ($serial, $label, $trust) = grabtrust();
if (defined $trusts{$label."\0".$serial}) {
warn "Trust for $label duplicated!\n";
}
$trusts{$label."\0".$serial} = $trust;
} elsif (/^CVS_ID.*Revision: ([^ ]*).*/) {
print "## Source: \"certdata.txt\" CVS revision $1\n##\n\n";
}
}
sub printlabel(@) {
my @res = @_;
map { s/\0.*//; s/[^[:print:]]/_/g; "\"$_\""; } @res;
return wantarray ? @res : $res[0];
}
# weed out untrusted certificates
foreach my $it (keys %trusts) {
if (!$trusts{$it}) {
if (!exists($certs{$it})) {
warn "Found trust for nonexistent certificate ".printlabel($it)."\n" if $debug;
} else {
delete $certs{$it};
warn "Skipping untrusted ".printlabel($it)."\n" if $debug;
$untrusted++;
}
}
}
print "## Untrusted certificates omitted from this bundle: $untrusted\n\n";
print STDERR "## Untrusted certificates omitted from this bundle: $untrusted\n";
my $certcount = 0;
foreach my $it (sort {uc($a) cmp uc($b)} keys %certs) {
if (!exists($trusts{$it})) {
die "Found certificate without trust block,\naborting";
}
printcert("", $certs{$it});
print "\n\n\n";
$certcount++;
print STDERR "Trusting $certcount: ".printlabel($it)."\n" if $debug;
}
if ($certcount < 25) {
die "Certificate count of $certcount is implausibly low.\nAbort";
}
print "## Number of certificates: $certcount\n";
print STDERR "## Number of certificates: $certcount\n";
print "## End of file.\n";

View File

@ -0,0 +1,6 @@
#!/bin/sh
if [ "$2" = POST-DEINSTALL ]; then
CERTCTL_ARGS="-D ${PKG_ROOTDIR}"
%%CERTCTL_CMD%% ${CERTCTL_ARGS} rehash
fi

View File

@ -0,0 +1,12 @@
#!/bin/sh
if [ "$2" = POST-INSTALL ]; then
CERTCTL_ARGS="-D ${PKG_ROOTDIR}"
if [ -n "${PKG_METALOG}" ]; then
CERTCTL_ARGS="${CERTCTL_ARGS} -U -M ${PKG_METALOG}"
fi
%%CERTCTL_CMD%% ${CERTCTL_ARGS} rehash
[ ! -e %%LOCALBASE%%/bin/cert-sync ] || \
%%LOCALBASE%%/bin/cert-sync --quiet %%PREFIX%%/share/certs/ca-root-nss.crt
fi

View File

@ -0,0 +1,23 @@
[
{ type: install
message: <<EOM
FreeBSD does not, and can not warrant that the certification authorities
whose certificates are included in this package have in any way been
audited for trustworthiness or RFC 3647 compliance.
Assessment and verification of trust is the complete responsibility of
the system administrator.
This package installs symlinks to support root certificate discovery
for software that either uses other cryptographic libraries than
OpenSSL, or use OpenSSL but do not follow recommended practice.
If you prefer to do this manually, replace the following symlinks with
either an empty file or your site-local certificate bundle.
* /etc/ssl/cert.pem
* %%PREFIX%%/etc/ssl/cert.pem
* %%PREFIX%%/openssl/cert.pem
EOM
}
]

View File

@ -0,0 +1,4 @@
Root certificates from certificate authorities included in the Mozilla
NSS library and thus in Firefox and Thunderbird.
This port directly tracks the version of NSS in the security/nss port.

View File

@ -0,0 +1,4 @@
%%CERTDIR%%/ca-root-nss.crt
@sample etc/ssl/cert.pem.sample
%%ETCSYMLINK%%openssl/cert.pem
%%ETCSYMLINK%%/etc/ssl/cert.pem

View File

@ -1,44 +0,0 @@
PORTNAME= augeas
DISTVERSION= 1.14.0
PORTREVISION= 4
CATEGORIES= textproc
MASTER_SITES= https://github.com/hercules-team/augeas/releases/download/release-${DISTVERSION}/
PATCH_SITES= https://github.com/hercules-team/augeas/commit/
PATCHFILES+= 7b26cbb74ed634d886ed842e3d5495361d8fd9b1.patch:-p1 # https://github.com/hercules-team/augeas/pull/792
MAINTAINER= puppet@FreeBSD.org
COMMENT= Configuration editing tool
WWW= https://augeas.net/
LICENSE= LGPL21
TEST_DEPENDS= bash:shells/bash \
gsed:textproc/gsed
USES= autoreconf cpe gmake gnome libtool pathfix pkgconfig readline
USE_GNOME= libxml2
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
INSTALL_TARGET= install-strip
LENSESDIR= ${PREFIX}/share/augeas/lenses
.include <bsd.port.pre.mk>
.if ${OPSYS} == FreeBSD
CFLAGS+=-Wno-error=int-conversion
.endif
post-patch:
@${REINPLACE_CMD} -e 's:/bin/bash:/usr/bin/env bash:' ${WRKSRC}/tests/*.sh
@${REINPLACE_CMD} -e 's:sed:gsed:' ${WRKSRC}/tests/test-augtool.sh
@${REINPLACE_CMD} -e 's:/usr/local:${LOCALBASE}:' \
${WRKSRC}/lenses/puppet.aug \
${WRKSRC}/lenses/puppet_auth.aug \
${WRKSRC}/lenses/puppetfileserver.aug
.include <bsd.port.post.mk>

View File

@ -1,5 +0,0 @@
TIMESTAMP = 1750064706
SHA256 (augeas-1.14.0.tar.gz) = 8c101759ca3d504bd1d805e70e2f615fa686af189dd7cf0529f71d855c087df1
SIZE (augeas-1.14.0.tar.gz) = 2651463
SHA256 (7b26cbb74ed634d886ed842e3d5495361d8fd9b1.patch) = 08b0dbf7f303cd7cb341e2dff13f9b5df7042c2171dcfc89ed00d1d8f4886983
SIZE (7b26cbb74ed634d886ed842e3d5495361d8fd9b1.patch) = 1239

View File

@ -1,10 +0,0 @@
--- lenses/pg_hba.aug.orig 2016-12-23 12:13:13 UTC
+++ lenses/pg_hba.aug
@@ -81,6 +81,7 @@ module Pg_Hba =
(* View: filter
The pg_hba.conf conf file *)
let filter = (incl "/var/lib/pgsql/data/pg_hba.conf" .
+ incl "/usr/local/pgsql/data/pg_hba.conf" .
incl "/var/lib/pgsql/*/data/pg_hba.conf" .
incl "/var/lib/postgresql/*/data/pg_hba.conf" .
incl "/etc/postgresql/*/*/pg_hba.conf" )

View File

@ -1,10 +0,0 @@
--- lenses/postgresql.aug.orig 2016-12-23 12:13:09 UTC
+++ lenses/postgresql.aug
@@ -70,6 +70,7 @@ let lns = (Util.empty | Util.comment | e
(* Variable: filter *)
let filter = (incl "/var/lib/pgsql/data/postgresql.conf" .
+ incl "/usr/local/pgsql/data/postgresql.conf" .
incl "/var/lib/pgsql/*/data/postgresql.conf" .
incl "/var/lib/postgresql/*/data/postgresql.conf" .
incl "/etc/postgresql/*/*/postgresql.conf" )

View File

@ -1,40 +0,0 @@
--- lenses/rsyslog.aug.orig 2025-07-23 13:11:53.989669000 +0200
+++ lenses/rsyslog.aug 2025-07-23 13:12:09.304191000 +0200
@@ -53,8 +53,10 @@
let namedpipe = Syslog.pipe . Sep.space . [ label "pipe" . store Syslog.file_r ]
-let action = Syslog.action | omusrmsg | file_tmpl | dynamic | namedpipe
+let action_config = [ key "action" . Util.del_str "(" . [ label "params" . store /[^)]+/ ] . Util.del_str ")" ]
+let action = Syslog.action | omusrmsg | file_tmpl | dynamic | namedpipe | action_config
+
(* Cannot use syslog program because rsyslog does not suppport #! *)
let program = [ label "program" . Syslog.bang .
( Syslog.opt_plus | [ Build.xchgs "-" "reverse" ] ) .
@@ -87,9 +89,23 @@
in [ label "filter" . prop_name . sep . prop_oper . sep . prop_val .
Sep.space . actions . Util.eol ]
-let entries = ( Syslog.empty | Util.comment | entry | macro | config_object | prop_filter )*
+(* View: condition
+ Parses if condition blocks, e.g., if $programname != "devd" then { ... }
+*)
+let condition =
+ let cond_rx = /\\$[a-zA-Z0-9_]+[ \t]*(==|!=|=~|!~|>|<|>=|<=)[ \t]*("[^"]*"|[0-9]+)/ in
+ [ key "if" . Sep.space .
+ [ label "condition" . store cond_rx ] . Sep.space .
+ Util.del_str "then" . Sep.space . Util.del_str "{" . (del /[ \t\n]*/ "" ) .
+ (entry | Util.comment | Syslog.empty)* .
+ Util.del_str "}" . (del /[ \t\n]*/ "" ) . Util.eol ]
-let lns = entries . ( program | hostname )*
+(* Fallback for unparsed lines *)
+let invalid = [ label "invalid" . store /[^\n]*\n/ ]
+
+let entries = ( Syslog.empty | Util.comment | entry | macro | config_object | prop_filter | condition | invalid )*
+
+let lns = entries . ( program | hostname | condition )*
let filter = incl "/etc/rsyslog.conf"
. incl "/etc/rsyslog.d/*"

View File

@ -1,11 +0,0 @@
--- src/internal.c.orig 2018-08-10 20:17:35 UTC
+++ src/internal.c
@@ -431,7 +431,7 @@ const char *xstrerror(int errnum, char *buf, size_t le
const char *xstrerror(int errnum, char *buf, size_t len) {
#ifdef HAVE_STRERROR_R
-# ifdef __USE_GNU
+# if defined(__USE_GNU) && defined(__GLIBC__)
/* Annoying linux specific API contract */
return strerror_r(errnum, buf, len);
# else

View File

@ -1,3 +0,0 @@
Augeas is a configuration editing tool. It parses configuration files in their
native formats and transforms them into a tree. Configuration changes are made
by manipulating this tree and saving it back into native config files.

View File

@ -1,487 +0,0 @@
bin/augmatch
bin/augparse
bin/augprint
bin/augtool
bin/fadot
include/augeas.h
include/fa.h
lib/libaugeas.a
lib/libaugeas.so
lib/libaugeas.so.0
lib/libaugeas.so.0.25.0
lib/libfa.a
lib/libfa.so
lib/libfa.so.1
lib/libfa.so.1.5.3
libdata/pkgconfig/augeas.pc
share/man/man1/augmatch.1.gz
share/man/man1/augparse.1.gz
share/man/man1/augprint.1.gz
share/man/man1/augtool.1.gz
%%DATADIR%%/lenses/dist/access.aug
%%DATADIR%%/lenses/dist/activemq_conf.aug
%%DATADIR%%/lenses/dist/activemq_xml.aug
%%DATADIR%%/lenses/dist/afs_cellalias.aug
%%DATADIR%%/lenses/dist/aliases.aug
%%DATADIR%%/lenses/dist/anaconda.aug
%%DATADIR%%/lenses/dist/anacron.aug
%%DATADIR%%/lenses/dist/approx.aug
%%DATADIR%%/lenses/dist/apt_update_manager.aug
%%DATADIR%%/lenses/dist/aptcacherngsecurity.aug
%%DATADIR%%/lenses/dist/aptconf.aug
%%DATADIR%%/lenses/dist/aptpreferences.aug
%%DATADIR%%/lenses/dist/aptsources.aug
%%DATADIR%%/lenses/dist/authinfo2.aug
%%DATADIR%%/lenses/dist/authorized_keys.aug
%%DATADIR%%/lenses/dist/authselectpam.aug
%%DATADIR%%/lenses/dist/automaster.aug
%%DATADIR%%/lenses/dist/automounter.aug
%%DATADIR%%/lenses/dist/avahi.aug
%%DATADIR%%/lenses/dist/backuppchosts.aug
%%DATADIR%%/lenses/dist/bbhosts.aug
%%DATADIR%%/lenses/dist/bootconf.aug
%%DATADIR%%/lenses/dist/build.aug
%%DATADIR%%/lenses/dist/cachefilesd.aug
%%DATADIR%%/lenses/dist/carbon.aug
%%DATADIR%%/lenses/dist/ceph.aug
%%DATADIR%%/lenses/dist/cgconfig.aug
%%DATADIR%%/lenses/dist/cgrules.aug
%%DATADIR%%/lenses/dist/channels.aug
%%DATADIR%%/lenses/dist/chrony.aug
%%DATADIR%%/lenses/dist/clamav.aug
%%DATADIR%%/lenses/dist/cmdline.aug
%%DATADIR%%/lenses/dist/cobblermodules.aug
%%DATADIR%%/lenses/dist/cobblersettings.aug
%%DATADIR%%/lenses/dist/cockpit.aug
%%DATADIR%%/lenses/dist/collectd.aug
%%DATADIR%%/lenses/dist/cpanel.aug
%%DATADIR%%/lenses/dist/cron.aug
%%DATADIR%%/lenses/dist/cron_user.aug
%%DATADIR%%/lenses/dist/crypttab.aug
%%DATADIR%%/lenses/dist/csv.aug
%%DATADIR%%/lenses/dist/cups.aug
%%DATADIR%%/lenses/dist/cyrus_imapd.aug
%%DATADIR%%/lenses/dist/darkice.aug
%%DATADIR%%/lenses/dist/debctrl.aug
%%DATADIR%%/lenses/dist/desktop.aug
%%DATADIR%%/lenses/dist/devfsrules.aug
%%DATADIR%%/lenses/dist/device_map.aug
%%DATADIR%%/lenses/dist/dhclient.aug
%%DATADIR%%/lenses/dist/dhcpd.aug
%%DATADIR%%/lenses/dist/dns_zone.aug
%%DATADIR%%/lenses/dist/dnsmasq.aug
%%DATADIR%%/lenses/dist/dovecot.aug
%%DATADIR%%/lenses/dist/dpkg.aug
%%DATADIR%%/lenses/dist/dput.aug
%%DATADIR%%/lenses/dist/erlang.aug
%%DATADIR%%/lenses/dist/ethers.aug
%%DATADIR%%/lenses/dist/exports.aug
%%DATADIR%%/lenses/dist/fai_diskconfig.aug
%%DATADIR%%/lenses/dist/fail2ban.aug
%%DATADIR%%/lenses/dist/fonts.aug
%%DATADIR%%/lenses/dist/fstab.aug
%%DATADIR%%/lenses/dist/fuse.aug
%%DATADIR%%/lenses/dist/gdm.aug
%%DATADIR%%/lenses/dist/getcap.aug
%%DATADIR%%/lenses/dist/group.aug
%%DATADIR%%/lenses/dist/grub.aug
%%DATADIR%%/lenses/dist/grubenv.aug
%%DATADIR%%/lenses/dist/gshadow.aug
%%DATADIR%%/lenses/dist/gtkbookmarks.aug
%%DATADIR%%/lenses/dist/host_conf.aug
%%DATADIR%%/lenses/dist/hostname.aug
%%DATADIR%%/lenses/dist/hosts.aug
%%DATADIR%%/lenses/dist/hosts_access.aug
%%DATADIR%%/lenses/dist/htpasswd.aug
%%DATADIR%%/lenses/dist/httpd.aug
%%DATADIR%%/lenses/dist/inetd.aug
%%DATADIR%%/lenses/dist/inifile.aug
%%DATADIR%%/lenses/dist/inittab.aug
%%DATADIR%%/lenses/dist/inputrc.aug
%%DATADIR%%/lenses/dist/interfaces.aug
%%DATADIR%%/lenses/dist/iproute2.aug
%%DATADIR%%/lenses/dist/iptables.aug
%%DATADIR%%/lenses/dist/iscsid.aug
%%DATADIR%%/lenses/dist/jaas.aug
%%DATADIR%%/lenses/dist/jettyrealm.aug
%%DATADIR%%/lenses/dist/jmxaccess.aug
%%DATADIR%%/lenses/dist/jmxpassword.aug
%%DATADIR%%/lenses/dist/json.aug
%%DATADIR%%/lenses/dist/kdump.aug
%%DATADIR%%/lenses/dist/keepalived.aug
%%DATADIR%%/lenses/dist/known_hosts.aug
%%DATADIR%%/lenses/dist/koji.aug
%%DATADIR%%/lenses/dist/krb5.aug
%%DATADIR%%/lenses/dist/ldif.aug
%%DATADIR%%/lenses/dist/ldso.aug
%%DATADIR%%/lenses/dist/lightdm.aug
%%DATADIR%%/lenses/dist/limits.aug
%%DATADIR%%/lenses/dist/login_defs.aug
%%DATADIR%%/lenses/dist/logrotate.aug
%%DATADIR%%/lenses/dist/logwatch.aug
%%DATADIR%%/lenses/dist/lokkit.aug
%%DATADIR%%/lenses/dist/lvm.aug
%%DATADIR%%/lenses/dist/mailscanner.aug
%%DATADIR%%/lenses/dist/mailscanner_rules.aug
%%DATADIR%%/lenses/dist/masterpasswd.aug
%%DATADIR%%/lenses/dist/mcollective.aug
%%DATADIR%%/lenses/dist/mdadm_conf.aug
%%DATADIR%%/lenses/dist/memcached.aug
%%DATADIR%%/lenses/dist/mke2fs.aug
%%DATADIR%%/lenses/dist/modprobe.aug
%%DATADIR%%/lenses/dist/modules.aug
%%DATADIR%%/lenses/dist/modules_conf.aug
%%DATADIR%%/lenses/dist/mongodbserver.aug
%%DATADIR%%/lenses/dist/monit.aug
%%DATADIR%%/lenses/dist/multipath.aug
%%DATADIR%%/lenses/dist/mysql.aug
%%DATADIR%%/lenses/dist/nagioscfg.aug
%%DATADIR%%/lenses/dist/nagiosobjects.aug
%%DATADIR%%/lenses/dist/netmasks.aug
%%DATADIR%%/lenses/dist/networkmanager.aug
%%DATADIR%%/lenses/dist/networks.aug
%%DATADIR%%/lenses/dist/nginx.aug
%%DATADIR%%/lenses/dist/nrpe.aug
%%DATADIR%%/lenses/dist/nslcd.aug
%%DATADIR%%/lenses/dist/nsswitch.aug
%%DATADIR%%/lenses/dist/ntp.aug
%%DATADIR%%/lenses/dist/ntpd.aug
%%DATADIR%%/lenses/dist/odbc.aug
%%DATADIR%%/lenses/dist/opendkim.aug
%%DATADIR%%/lenses/dist/openshift_config.aug
%%DATADIR%%/lenses/dist/openshift_http.aug
%%DATADIR%%/lenses/dist/openshift_quickstarts.aug
%%DATADIR%%/lenses/dist/openvpn.aug
%%DATADIR%%/lenses/dist/oz.aug
%%DATADIR%%/lenses/dist/pagekite.aug
%%DATADIR%%/lenses/dist/pam.aug
%%DATADIR%%/lenses/dist/pamconf.aug
%%DATADIR%%/lenses/dist/passwd.aug
%%DATADIR%%/lenses/dist/pbuilder.aug
%%DATADIR%%/lenses/dist/pg_hba.aug
%%DATADIR%%/lenses/dist/pgbouncer.aug
%%DATADIR%%/lenses/dist/php.aug
%%DATADIR%%/lenses/dist/phpvars.aug
%%DATADIR%%/lenses/dist/postfix_access.aug
%%DATADIR%%/lenses/dist/postfix_main.aug
%%DATADIR%%/lenses/dist/postfix_master.aug
%%DATADIR%%/lenses/dist/postfix_passwordmap.aug
%%DATADIR%%/lenses/dist/postfix_sasl_smtpd.aug
%%DATADIR%%/lenses/dist/postfix_transport.aug
%%DATADIR%%/lenses/dist/postfix_virtual.aug
%%DATADIR%%/lenses/dist/postgresql.aug
%%DATADIR%%/lenses/dist/properties.aug
%%DATADIR%%/lenses/dist/protocols.aug
%%DATADIR%%/lenses/dist/puppet.aug
%%DATADIR%%/lenses/dist/puppet_auth.aug
%%DATADIR%%/lenses/dist/puppetfile.aug
%%DATADIR%%/lenses/dist/puppetfileserver.aug
%%DATADIR%%/lenses/dist/pylonspaste.aug
%%DATADIR%%/lenses/dist/pythonpaste.aug
%%DATADIR%%/lenses/dist/qpid.aug
%%DATADIR%%/lenses/dist/quote.aug
%%DATADIR%%/lenses/dist/rabbitmq.aug
%%DATADIR%%/lenses/dist/radicale.aug
%%DATADIR%%/lenses/dist/rancid.aug
%%DATADIR%%/lenses/dist/redis.aug
%%DATADIR%%/lenses/dist/reprepro_uploaders.aug
%%DATADIR%%/lenses/dist/resolv.aug
%%DATADIR%%/lenses/dist/rhsm.aug
%%DATADIR%%/lenses/dist/rmt.aug
%%DATADIR%%/lenses/dist/rsyncd.aug
%%DATADIR%%/lenses/dist/rsyslog.aug
%%DATADIR%%/lenses/dist/rtadvd.aug
%%DATADIR%%/lenses/dist/rx.aug
%%DATADIR%%/lenses/dist/samba.aug
%%DATADIR%%/lenses/dist/schroot.aug
%%DATADIR%%/lenses/dist/securetty.aug
%%DATADIR%%/lenses/dist/semanage.aug
%%DATADIR%%/lenses/dist/sep.aug
%%DATADIR%%/lenses/dist/services.aug
%%DATADIR%%/lenses/dist/shadow.aug
%%DATADIR%%/lenses/dist/shells.aug
%%DATADIR%%/lenses/dist/shellvars.aug
%%DATADIR%%/lenses/dist/shellvars_list.aug
%%DATADIR%%/lenses/dist/simplelines.aug
%%DATADIR%%/lenses/dist/simplevars.aug
%%DATADIR%%/lenses/dist/sip_conf.aug
%%DATADIR%%/lenses/dist/slapd.aug
%%DATADIR%%/lenses/dist/smbusers.aug
%%DATADIR%%/lenses/dist/solaris_system.aug
%%DATADIR%%/lenses/dist/soma.aug
%%DATADIR%%/lenses/dist/sos.aug
%%DATADIR%%/lenses/dist/spacevars.aug
%%DATADIR%%/lenses/dist/splunk.aug
%%DATADIR%%/lenses/dist/squid.aug
%%DATADIR%%/lenses/dist/ssh.aug
%%DATADIR%%/lenses/dist/sshd.aug
%%DATADIR%%/lenses/dist/sssd.aug
%%DATADIR%%/lenses/dist/star.aug
%%DATADIR%%/lenses/dist/strongswan.aug
%%DATADIR%%/lenses/dist/stunnel.aug
%%DATADIR%%/lenses/dist/subversion.aug
%%DATADIR%%/lenses/dist/sudoers.aug
%%DATADIR%%/lenses/dist/sysconfig.aug
%%DATADIR%%/lenses/dist/sysconfig_route.aug
%%DATADIR%%/lenses/dist/sysctl.aug
%%DATADIR%%/lenses/dist/syslog.aug
%%DATADIR%%/lenses/dist/systemd.aug
%%DATADIR%%/lenses/dist/termcap.aug
%%DATADIR%%/lenses/dist/tests/test_access.aug
%%DATADIR%%/lenses/dist/tests/test_activemq_conf.aug
%%DATADIR%%/lenses/dist/tests/test_activemq_xml.aug
%%DATADIR%%/lenses/dist/tests/test_afs_cellalias.aug
%%DATADIR%%/lenses/dist/tests/test_aliases.aug
%%DATADIR%%/lenses/dist/tests/test_anaconda.aug
%%DATADIR%%/lenses/dist/tests/test_anacron.aug
%%DATADIR%%/lenses/dist/tests/test_approx.aug
%%DATADIR%%/lenses/dist/tests/test_apt_update_manager.aug
%%DATADIR%%/lenses/dist/tests/test_aptcacherngsecurity.aug
%%DATADIR%%/lenses/dist/tests/test_aptconf.aug
%%DATADIR%%/lenses/dist/tests/test_aptpreferences.aug
%%DATADIR%%/lenses/dist/tests/test_aptsources.aug
%%DATADIR%%/lenses/dist/tests/test_authinfo2.aug
%%DATADIR%%/lenses/dist/tests/test_authorized_keys.aug
%%DATADIR%%/lenses/dist/tests/test_authselectpam.aug
%%DATADIR%%/lenses/dist/tests/test_automaster.aug
%%DATADIR%%/lenses/dist/tests/test_automounter.aug
%%DATADIR%%/lenses/dist/tests/test_avahi.aug
%%DATADIR%%/lenses/dist/tests/test_backuppchosts.aug
%%DATADIR%%/lenses/dist/tests/test_bbhosts.aug
%%DATADIR%%/lenses/dist/tests/test_bootconf.aug
%%DATADIR%%/lenses/dist/tests/test_build.aug
%%DATADIR%%/lenses/dist/tests/test_cachefilesd.aug
%%DATADIR%%/lenses/dist/tests/test_carbon.aug
%%DATADIR%%/lenses/dist/tests/test_ceph.aug
%%DATADIR%%/lenses/dist/tests/test_cgconfig.aug
%%DATADIR%%/lenses/dist/tests/test_cgrules.aug
%%DATADIR%%/lenses/dist/tests/test_channels.aug
%%DATADIR%%/lenses/dist/tests/test_chrony.aug
%%DATADIR%%/lenses/dist/tests/test_clamav.aug
%%DATADIR%%/lenses/dist/tests/test_cmdline.aug
%%DATADIR%%/lenses/dist/tests/test_cobblermodules.aug
%%DATADIR%%/lenses/dist/tests/test_cobblersettings.aug
%%DATADIR%%/lenses/dist/tests/test_cockpit.aug
%%DATADIR%%/lenses/dist/tests/test_collectd.aug
%%DATADIR%%/lenses/dist/tests/test_cpanel.aug
%%DATADIR%%/lenses/dist/tests/test_cron.aug
%%DATADIR%%/lenses/dist/tests/test_cron_user.aug
%%DATADIR%%/lenses/dist/tests/test_crypttab.aug
%%DATADIR%%/lenses/dist/tests/test_csv.aug
%%DATADIR%%/lenses/dist/tests/test_cups.aug
%%DATADIR%%/lenses/dist/tests/test_cyrus_imapd.aug
%%DATADIR%%/lenses/dist/tests/test_darkice.aug
%%DATADIR%%/lenses/dist/tests/test_debctrl.aug
%%DATADIR%%/lenses/dist/tests/test_desktop.aug
%%DATADIR%%/lenses/dist/tests/test_devfsrules.aug
%%DATADIR%%/lenses/dist/tests/test_device_map.aug
%%DATADIR%%/lenses/dist/tests/test_dhclient.aug
%%DATADIR%%/lenses/dist/tests/test_dhcpd.aug
%%DATADIR%%/lenses/dist/tests/test_dns_zone.aug
%%DATADIR%%/lenses/dist/tests/test_dnsmasq.aug
%%DATADIR%%/lenses/dist/tests/test_dovecot.aug
%%DATADIR%%/lenses/dist/tests/test_dpkg.aug
%%DATADIR%%/lenses/dist/tests/test_dput.aug
%%DATADIR%%/lenses/dist/tests/test_erlang.aug
%%DATADIR%%/lenses/dist/tests/test_ethers.aug
%%DATADIR%%/lenses/dist/tests/test_exports.aug
%%DATADIR%%/lenses/dist/tests/test_fai_diskconfig.aug
%%DATADIR%%/lenses/dist/tests/test_fail2ban.aug
%%DATADIR%%/lenses/dist/tests/test_fonts.aug
%%DATADIR%%/lenses/dist/tests/test_fstab.aug
%%DATADIR%%/lenses/dist/tests/test_fuse.aug
%%DATADIR%%/lenses/dist/tests/test_gdm.aug
%%DATADIR%%/lenses/dist/tests/test_getcap.aug
%%DATADIR%%/lenses/dist/tests/test_group.aug
%%DATADIR%%/lenses/dist/tests/test_grub.aug
%%DATADIR%%/lenses/dist/tests/test_grubenv.aug
%%DATADIR%%/lenses/dist/tests/test_gshadow.aug
%%DATADIR%%/lenses/dist/tests/test_gtkbookmarks.aug
%%DATADIR%%/lenses/dist/tests/test_host_conf.aug
%%DATADIR%%/lenses/dist/tests/test_hostname.aug
%%DATADIR%%/lenses/dist/tests/test_hosts.aug
%%DATADIR%%/lenses/dist/tests/test_hosts_access.aug
%%DATADIR%%/lenses/dist/tests/test_htpasswd.aug
%%DATADIR%%/lenses/dist/tests/test_httpd.aug
%%DATADIR%%/lenses/dist/tests/test_inetd.aug
%%DATADIR%%/lenses/dist/tests/test_inifile.aug
%%DATADIR%%/lenses/dist/tests/test_inittab.aug
%%DATADIR%%/lenses/dist/tests/test_inputrc.aug
%%DATADIR%%/lenses/dist/tests/test_interfaces.aug
%%DATADIR%%/lenses/dist/tests/test_iproute2.aug
%%DATADIR%%/lenses/dist/tests/test_iptables.aug
%%DATADIR%%/lenses/dist/tests/test_iscsid.aug
%%DATADIR%%/lenses/dist/tests/test_jaas.aug
%%DATADIR%%/lenses/dist/tests/test_jettyrealm.aug
%%DATADIR%%/lenses/dist/tests/test_jmxaccess.aug
%%DATADIR%%/lenses/dist/tests/test_jmxpassword.aug
%%DATADIR%%/lenses/dist/tests/test_json.aug
%%DATADIR%%/lenses/dist/tests/test_kdump.aug
%%DATADIR%%/lenses/dist/tests/test_keepalived.aug
%%DATADIR%%/lenses/dist/tests/test_known_hosts.aug
%%DATADIR%%/lenses/dist/tests/test_koji.aug
%%DATADIR%%/lenses/dist/tests/test_krb5.aug
%%DATADIR%%/lenses/dist/tests/test_ldap.aug
%%DATADIR%%/lenses/dist/tests/test_ldif.aug
%%DATADIR%%/lenses/dist/tests/test_ldso.aug
%%DATADIR%%/lenses/dist/tests/test_lightdm.aug
%%DATADIR%%/lenses/dist/tests/test_limits.aug
%%DATADIR%%/lenses/dist/tests/test_login_defs.aug
%%DATADIR%%/lenses/dist/tests/test_logrotate.aug
%%DATADIR%%/lenses/dist/tests/test_logwatch.aug
%%DATADIR%%/lenses/dist/tests/test_lokkit.aug
%%DATADIR%%/lenses/dist/tests/test_lvm.aug
%%DATADIR%%/lenses/dist/tests/test_mailscanner.aug
%%DATADIR%%/lenses/dist/tests/test_mailscanner_rules.aug
%%DATADIR%%/lenses/dist/tests/test_masterpasswd.aug
%%DATADIR%%/lenses/dist/tests/test_mcollective.aug
%%DATADIR%%/lenses/dist/tests/test_mdadm_conf.aug
%%DATADIR%%/lenses/dist/tests/test_memcached.aug
%%DATADIR%%/lenses/dist/tests/test_mke2fs.aug
%%DATADIR%%/lenses/dist/tests/test_modprobe.aug
%%DATADIR%%/lenses/dist/tests/test_modules.aug
%%DATADIR%%/lenses/dist/tests/test_modules_conf.aug
%%DATADIR%%/lenses/dist/tests/test_mongodbserver.aug
%%DATADIR%%/lenses/dist/tests/test_monit.aug
%%DATADIR%%/lenses/dist/tests/test_multipath.aug
%%DATADIR%%/lenses/dist/tests/test_mysql.aug
%%DATADIR%%/lenses/dist/tests/test_nagioscfg.aug
%%DATADIR%%/lenses/dist/tests/test_nagiosobjects.aug
%%DATADIR%%/lenses/dist/tests/test_netmasks.aug
%%DATADIR%%/lenses/dist/tests/test_networkmanager.aug
%%DATADIR%%/lenses/dist/tests/test_networks.aug
%%DATADIR%%/lenses/dist/tests/test_nginx.aug
%%DATADIR%%/lenses/dist/tests/test_nrpe.aug
%%DATADIR%%/lenses/dist/tests/test_nslcd.aug
%%DATADIR%%/lenses/dist/tests/test_nsswitch.aug
%%DATADIR%%/lenses/dist/tests/test_ntp.aug
%%DATADIR%%/lenses/dist/tests/test_ntpd.aug
%%DATADIR%%/lenses/dist/tests/test_odbc.aug
%%DATADIR%%/lenses/dist/tests/test_opendkim.aug
%%DATADIR%%/lenses/dist/tests/test_openshift_config.aug
%%DATADIR%%/lenses/dist/tests/test_openshift_http.aug
%%DATADIR%%/lenses/dist/tests/test_openshift_quickstarts.aug
%%DATADIR%%/lenses/dist/tests/test_openvpn.aug
%%DATADIR%%/lenses/dist/tests/test_oz.aug
%%DATADIR%%/lenses/dist/tests/test_pagekite.aug
%%DATADIR%%/lenses/dist/tests/test_pam.aug
%%DATADIR%%/lenses/dist/tests/test_pamconf.aug
%%DATADIR%%/lenses/dist/tests/test_passwd.aug
%%DATADIR%%/lenses/dist/tests/test_pbuilder.aug
%%DATADIR%%/lenses/dist/tests/test_pg_hba.aug
%%DATADIR%%/lenses/dist/tests/test_pgbouncer.aug
%%DATADIR%%/lenses/dist/tests/test_php.aug
%%DATADIR%%/lenses/dist/tests/test_phpvars.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_access.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_main.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_master.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_passwordmap.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_sasl_smtpd.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_transport.aug
%%DATADIR%%/lenses/dist/tests/test_postfix_virtual.aug
%%DATADIR%%/lenses/dist/tests/test_postgresql.aug
%%DATADIR%%/lenses/dist/tests/test_properties.aug
%%DATADIR%%/lenses/dist/tests/test_protocols.aug
%%DATADIR%%/lenses/dist/tests/test_puppet.aug
%%DATADIR%%/lenses/dist/tests/test_puppet_auth.aug
%%DATADIR%%/lenses/dist/tests/test_puppetfile.aug
%%DATADIR%%/lenses/dist/tests/test_puppetfileserver.aug
%%DATADIR%%/lenses/dist/tests/test_pylonspaste.aug
%%DATADIR%%/lenses/dist/tests/test_pythonpaste.aug
%%DATADIR%%/lenses/dist/tests/test_qpid.aug
%%DATADIR%%/lenses/dist/tests/test_quote.aug
%%DATADIR%%/lenses/dist/tests/test_rabbitmq.aug
%%DATADIR%%/lenses/dist/tests/test_radicale.aug
%%DATADIR%%/lenses/dist/tests/test_rancid.aug
%%DATADIR%%/lenses/dist/tests/test_redis.aug
%%DATADIR%%/lenses/dist/tests/test_reprepro_uploaders.aug
%%DATADIR%%/lenses/dist/tests/test_resolv.aug
%%DATADIR%%/lenses/dist/tests/test_rhsm.aug
%%DATADIR%%/lenses/dist/tests/test_rmt.aug
%%DATADIR%%/lenses/dist/tests/test_rsyncd.aug
%%DATADIR%%/lenses/dist/tests/test_rsyslog.aug
%%DATADIR%%/lenses/dist/tests/test_rtadvd.aug
%%DATADIR%%/lenses/dist/tests/test_rx.aug
%%DATADIR%%/lenses/dist/tests/test_samba.aug
%%DATADIR%%/lenses/dist/tests/test_schroot.aug
%%DATADIR%%/lenses/dist/tests/test_securetty.aug
%%DATADIR%%/lenses/dist/tests/test_semanage.aug
%%DATADIR%%/lenses/dist/tests/test_services.aug
%%DATADIR%%/lenses/dist/tests/test_shadow.aug
%%DATADIR%%/lenses/dist/tests/test_shells.aug
%%DATADIR%%/lenses/dist/tests/test_shellvars.aug
%%DATADIR%%/lenses/dist/tests/test_shellvars_list.aug
%%DATADIR%%/lenses/dist/tests/test_simplelines.aug
%%DATADIR%%/lenses/dist/tests/test_simplevars.aug
%%DATADIR%%/lenses/dist/tests/test_sip_conf.aug
%%DATADIR%%/lenses/dist/tests/test_slapd.aug
%%DATADIR%%/lenses/dist/tests/test_smbusers.aug
%%DATADIR%%/lenses/dist/tests/test_solaris_system.aug
%%DATADIR%%/lenses/dist/tests/test_soma.aug
%%DATADIR%%/lenses/dist/tests/test_sos.aug
%%DATADIR%%/lenses/dist/tests/test_spacevars.aug
%%DATADIR%%/lenses/dist/tests/test_splunk.aug
%%DATADIR%%/lenses/dist/tests/test_squid.aug
%%DATADIR%%/lenses/dist/tests/test_ssh.aug
%%DATADIR%%/lenses/dist/tests/test_sshd.aug
%%DATADIR%%/lenses/dist/tests/test_sssd.aug
%%DATADIR%%/lenses/dist/tests/test_star.aug
%%DATADIR%%/lenses/dist/tests/test_strongswan.aug
%%DATADIR%%/lenses/dist/tests/test_stunnel.aug
%%DATADIR%%/lenses/dist/tests/test_subversion.aug
%%DATADIR%%/lenses/dist/tests/test_sudoers.aug
%%DATADIR%%/lenses/dist/tests/test_sysconfig.aug
%%DATADIR%%/lenses/dist/tests/test_sysconfig_route.aug
%%DATADIR%%/lenses/dist/tests/test_sysctl.aug
%%DATADIR%%/lenses/dist/tests/test_syslog.aug
%%DATADIR%%/lenses/dist/tests/test_systemd.aug
%%DATADIR%%/lenses/dist/tests/test_termcap.aug
%%DATADIR%%/lenses/dist/tests/test_thttpd.aug
%%DATADIR%%/lenses/dist/tests/test_tinc.aug
%%DATADIR%%/lenses/dist/tests/test_tmpfiles.aug
%%DATADIR%%/lenses/dist/tests/test_toml.aug
%%DATADIR%%/lenses/dist/tests/test_trapperkeeper.aug
%%DATADIR%%/lenses/dist/tests/test_tuned.aug
%%DATADIR%%/lenses/dist/tests/test_up2date.aug
%%DATADIR%%/lenses/dist/tests/test_updatedb.aug
%%DATADIR%%/lenses/dist/tests/test_util.aug
%%DATADIR%%/lenses/dist/tests/test_vfstab.aug
%%DATADIR%%/lenses/dist/tests/test_vmware_config.aug
%%DATADIR%%/lenses/dist/tests/test_vsftpd.aug
%%DATADIR%%/lenses/dist/tests/test_webmin.aug
%%DATADIR%%/lenses/dist/tests/test_wine.aug
%%DATADIR%%/lenses/dist/tests/test_xendconfsxp.aug
%%DATADIR%%/lenses/dist/tests/test_xinetd.aug
%%DATADIR%%/lenses/dist/tests/test_xml.aug
%%DATADIR%%/lenses/dist/tests/test_xorg.aug
%%DATADIR%%/lenses/dist/tests/test_xymon.aug
%%DATADIR%%/lenses/dist/tests/test_xymon_alerting.aug
%%DATADIR%%/lenses/dist/tests/test_yaml.aug
%%DATADIR%%/lenses/dist/tests/test_yum.aug
%%DATADIR%%/lenses/dist/thttpd.aug
%%DATADIR%%/lenses/dist/tinc.aug
%%DATADIR%%/lenses/dist/tmpfiles.aug
%%DATADIR%%/lenses/dist/toml.aug
%%DATADIR%%/lenses/dist/trapperkeeper.aug
%%DATADIR%%/lenses/dist/tuned.aug
%%DATADIR%%/lenses/dist/up2date.aug
%%DATADIR%%/lenses/dist/updatedb.aug
%%DATADIR%%/lenses/dist/util.aug
%%DATADIR%%/lenses/dist/vfstab.aug
%%DATADIR%%/lenses/dist/vmware_config.aug
%%DATADIR%%/lenses/dist/vsftpd.aug
%%DATADIR%%/lenses/dist/webmin.aug
%%DATADIR%%/lenses/dist/wine.aug
%%DATADIR%%/lenses/dist/xendconfsxp.aug
%%DATADIR%%/lenses/dist/xinetd.aug
%%DATADIR%%/lenses/dist/xml.aug
%%DATADIR%%/lenses/dist/xorg.aug
%%DATADIR%%/lenses/dist/xymon.aug
%%DATADIR%%/lenses/dist/xymon_alerting.aug
%%DATADIR%%/lenses/dist/yaml.aug
%%DATADIR%%/lenses/dist/yum.aug
share/bash-completion/completions/augmatch
share/bash-completion/completions/augprint
share/bash-completion/completions/augtool
share/vim/vimfiles/ftdetect/augeas.vim
share/vim/vimfiles/syntax/augeas.vim

View File

@ -1,71 +0,0 @@
PORTNAME= libxml2
DISTVERSION= 2.11.9
PORTREVISION?= 1
CATEGORIES?= textproc gnome
MASTER_SITES= GNOME
DIST_SUBDIR= gnome
# FIX CVE-2025-32414
PATCH_SITES= https://gitlab.gnome.org/-/project/1665/uploads/
PATCHFILES+= 90c0ee56b5b7d6d91cb9bcd04b923b6c/bug-889-v2.11.0-and-above.patch:-p1
MAINTAINER= desktop@FreeBSD.org
COMMENT?= XML parser library for GNOME
WWW= http://xmlsoft.org/
LICENSE= MIT
USES+= cmake:testing cpe iconv localbase:ldflags pathfix \
pkgconfig tar:xz
CPE_VENDOR= xmlsoft
USE_LDCONFIG= yes
# Don't build with Python support unless requested
CMAKE_${LIBXML2_SLAVE:DON:UOFF}=LIBXML2_WITH_PYTHON
# Many symbols in the linker version script libxml2.syms are only defined when
# --with-xptr-locs is enabled at configure time. Suppress errors with lld >= 17
# due to these undefined symbols.
LDFLAGS+= -Wl,--undefined-version
CMAKE_TESTING_ON= LIBXML2_WITH_TESTS
CMAKE_ARGS= -DCMAKE_INSTALL_SYSCONFDIR=share
CMAKE_OFF+= LIBXML2_WITH_TESTS
PLIST_SUB+= LIBVERSION=${DISTVERSION}
OPTIONS_DEFINE= DOCS ICU MEM_DEBUG READLINE THREAD_ALLOC
OPTIONS_DEFAULT= READLINE
OPTIONS_SUB= yes
MEM_DEBUG_DESC= Memory debugging (DEVELOPERS ONLY!)
READLINE_DESC= History for xmllint
THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!)
ICU_LIB_DEPENDS= libicudata.so:devel/icu
ICU_CMAKE_BOOL= LIBXML2_WITH_ICU
MEM_DEBUG_CONFIGURE_WITH= LIBXML2_WITH_MEM_DEBUG
READLINE_LIB_DEPENDS= libreadline.so:devel/readline
READLINE_CMAKE_OFF= -DHAVE_LIBHISTORY=false \
-DHAVE_LIBREADLINE=false
THREAD_ALLOC_CMAKE_BOOL= LIBXML2_WITH_THREAD_ALLOC
post-patch:
@${REINPLACE_CMD} -e \
's|/etc/xml/catalog|${LOCALBASE}/share/xml/catalog|g; \
s|/etc/sgml/catalog|${LOCALBASE}/share/sgml/catalog|g' \
${WRKSRC}/doc/xmllint.1
post-install:
.if defined(LIBXML2_SLAVE)
${STRIP_CMD} ${STAGEDIR}${PYTHON_LIBDIR}/site-packages/libxml2mod.so
${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \
-f -d ${PYTHONPREFIX_SITELIBDIR} \
${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py \
-f -d ${PYTHONPREFIX_SITELIBDIR} \
${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
.endif
.include <bsd.port.mk>

View File

@ -1,5 +0,0 @@
TIMESTAMP = 1749806706
SHA256 (gnome/libxml2-2.11.9.tar.xz) = 780157a1efdb57188ec474dca87acaee67a3a839c2525b2214d318228451809f
SIZE (gnome/libxml2-2.11.9.tar.xz) = 2627500
SHA256 (gnome/90c0ee56b5b7d6d91cb9bcd04b923b6c/bug-889-v2.11.0-and-above.patch) = 48eb9235fa0ebb1f539b9669d01a05ed5afb73132eee13a9dfe08ac2165e6e8a
SIZE (gnome/90c0ee56b5b7d6d91cb9bcd04b923b6c/bug-889-v2.11.0-and-above.patch) = 2113

View File

@ -1,33 +0,0 @@
--- CMakeLists.txt.orig 2023-08-11 18:59:11 UTC
+++ CMakeLists.txt
@@ -395,13 +395,17 @@ if(LIBXML2_WITH_ICU)
if(WIN32)
set(ICU_LIBS "-licudt -licuin -licuuc")
else()
- set(ICU_LIBS "-licudata -licui18n -licuuc")
+ set(ICU_LIBS_DIR "${ICU_INCLUDE_DIRS}")
+ STRING(REGEX REPLACE "include" "lib" ICU_LIBS_DIR ${ICU_LIBS_DIR})
+ set(ICU_LIBS "-L${ICU_LIBS_DIR} -licudata -licui18n -licuuc")
endif()
endif()
if(LIBXML2_WITH_LZMA)
target_link_libraries(LibXml2 PRIVATE LibLZMA::LibLZMA)
- set(LZMA_LIBS "-llzma")
+ set(LZMA_LIBS_DIR "${LIBLZMA_INCLUDE_DIRS}")
+ STRING(REGEX REPLACE "include" "lib" LZMA_LIBS_DIR ${LZMA_LIBS_DIR})
+ set(LZMA_LIBS "-L${LZMA_LIBS_DIR} -llzma")
endif()
if(LIBXML2_WITH_THREADS)
@@ -411,7 +415,9 @@ endif()
if(LIBXML2_WITH_ZLIB)
target_link_libraries(LibXml2 PRIVATE ZLIB::ZLIB)
- set(Z_LIBS "-lz")
+ set(Z_LIBS_DIR "${ZLIB_INCLUDE_DIRS}")
+ STRING(REGEX REPLACE "include" "lib" Z_LIBS_DIR ${Z_LIBS_DIR})
+ set(Z_LIBS "-L${Z_LIBS_DIR} -lz")
endif()
set_target_properties(

View File

@ -1,18 +0,0 @@
--- xmlschemas.c.orig 2024-07-24 16:00:51.000000000 +0200
+++ xmlschemas.c 2025-06-13 12:28:51.821977000 +0200
@@ -23672,6 +23672,7 @@
}
if (xmlSchemaItemListAdd(bind->dupls, bind->nodeTable[j]) == -1)
goto internal_error;
+ dupls = (xmlSchemaPSVIIDCNodePtr *) bind->dupls->items;
/*
* Remove the duplicate entry from the IDC node-table.
*/
@@ -23888,6 +23889,7 @@
goto internal_error;
}
xmlSchemaItemListAdd(parBind->dupls, parNode);
+ dupls = (xmlSchemaPSVIIDCNodePtr *) parBind->dupls->items;
} else {
/*
* Add the node-table entry (node and key-sequence) of

View File

@ -1,42 +0,0 @@
--- valid.c.orig 2024-07-24 16:00:51.000000000 +0200
+++ valid.c 2025-06-13 12:21:58.669680000 +0200
@@ -5252,25 +5252,27 @@
return;
}
switch (cur->type) {
- case XML_ELEMENT_NODE:
+ case XML_ELEMENT_NODE: {
+ int qnameLen = xmlStrlen(cur->name);
+
+ if ((cur->ns != NULL) && (cur->ns->prefix != NULL))
+ qnameLen += xmlStrlen(cur->ns->prefix) + 1;
+ if (size - len < qnameLen + 10) {
+ if ((size - len > 4) && (buf[len - 1] != '.'))
+ strcat(buf, " ...");
+ return;
+ }
+
if ((cur->ns != NULL) && (cur->ns->prefix != NULL)) {
- if (size - len < xmlStrlen(cur->ns->prefix) + 10) {
- if ((size - len > 4) && (buf[len - 1] != '.'))
- strcat(buf, " ...");
- return;
- }
strcat(buf, (char *) cur->ns->prefix);
strcat(buf, ":");
}
- if (size - len < xmlStrlen(cur->name) + 10) {
- if ((size - len > 4) && (buf[len - 1] != '.'))
- strcat(buf, " ...");
- return;
- }
- strcat(buf, (char *) cur->name);
+ if (cur->name != NULL)
+ strcat(buf, (char *) cur->name);
if (cur->next != NULL)
strcat(buf, " ");
break;
+ }
case XML_TEXT_NODE:
if (xmlIsBlankNode(cur))
break;

View File

@ -1,25 +0,0 @@
Revert the following commit, it makes the freebsd doc chain fail.
From 8eb55d782a2b9afacc7938694891cc6fad7b42a5 Mon Sep 17 00:00:00 2001
From: Dennis Filder <d.filder@web.de>
Date: Fri, 13 Jun 2014 14:56:14 +0800
Subject: xmlSaveUri() incorrectly recomposes URIs with rootless paths
For https://bugzilla.gnome.org/show_bug.cgi?id=731063
xmlSaveUri() of libxml2 (snapshot 2014-05-31 and earlier) returns
bogus values when called with URIs that have rootless paths
(e.g. "urx:b:b" becomes "urx://b%3Ab" where "urx:b%3Ab" would be
correct)
--- uri.c.orig 2019-10-22 18:46:01 UTC
+++ uri.c
@@ -1201,6 +1201,8 @@ xmlSaveUri(xmlURIPtr uri) {
if (temp == NULL) goto mem_error;
ret = temp;
}
+ ret[len++] = '/';
+ ret[len++] = '/';
}
if (uri->path != NULL) {
p = uri->path;

View File

@ -1,4 +0,0 @@
Libxml2 is the XML C parser and toolkit developed for the Gnome project (but
usable outside of the Gnome platform). XML itself is a metalanguage to design
markup languages, i.e. text language where semantic and structure are added to
the content using extra "markup" information enclosed between angle brackets.

View File

@ -1,182 +0,0 @@
bin/xml2-config
bin/xmlcatalog
bin/xmllint
include/libxml2/libxml/HTMLparser.h
include/libxml2/libxml/HTMLtree.h
include/libxml2/libxml/SAX.h
include/libxml2/libxml/SAX2.h
include/libxml2/libxml/c14n.h
include/libxml2/libxml/catalog.h
include/libxml2/libxml/chvalid.h
include/libxml2/libxml/debugXML.h
include/libxml2/libxml/dict.h
include/libxml2/libxml/encoding.h
include/libxml2/libxml/entities.h
include/libxml2/libxml/globals.h
include/libxml2/libxml/hash.h
include/libxml2/libxml/list.h
include/libxml2/libxml/nanoftp.h
include/libxml2/libxml/nanohttp.h
include/libxml2/libxml/parser.h
include/libxml2/libxml/parserInternals.h
include/libxml2/libxml/pattern.h
include/libxml2/libxml/relaxng.h
include/libxml2/libxml/schemasInternals.h
include/libxml2/libxml/schematron.h
include/libxml2/libxml/threads.h
include/libxml2/libxml/tree.h
include/libxml2/libxml/uri.h
include/libxml2/libxml/valid.h
include/libxml2/libxml/xinclude.h
include/libxml2/libxml/xlink.h
include/libxml2/libxml/xmlIO.h
include/libxml2/libxml/xmlautomata.h
include/libxml2/libxml/xmlerror.h
include/libxml2/libxml/xmlexports.h
include/libxml2/libxml/xmlmemory.h
include/libxml2/libxml/xmlmodule.h
include/libxml2/libxml/xmlreader.h
include/libxml2/libxml/xmlregexp.h
include/libxml2/libxml/xmlsave.h
include/libxml2/libxml/xmlschemas.h
include/libxml2/libxml/xmlschemastypes.h
include/libxml2/libxml/xmlstring.h
include/libxml2/libxml/xmlunicode.h
include/libxml2/libxml/xmlversion.h
include/libxml2/libxml/xmlwriter.h
include/libxml2/libxml/xpath.h
include/libxml2/libxml/xpathInternals.h
include/libxml2/libxml/xpointer.h
lib/cmake/libxml2-%%LIBVERSION%%/libxml2-config-version.cmake
lib/cmake/libxml2-%%LIBVERSION%%/libxml2-config.cmake
lib/cmake/libxml2-%%LIBVERSION%%/libxml2-export-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/libxml2-%%LIBVERSION%%/libxml2-export.cmake
lib/libxml2.so
lib/libxml2.so.2
lib/libxml2.so.%%LIBVERSION%%
libdata/pkgconfig/libxml-2.0.pc
share/man/man1/xml2-config.1.gz
share/man/man1/xmlcatalog.1.gz
share/man/man1/xmllint.1.gz
share/aclocal/libxml.m4
%%PORTDOCS%%%%DOCSDIR%%/devhelp/general.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/home.png
%%PORTDOCS%%%%DOCSDIR%%/devhelp/index.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/left.png
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-HTMLparser.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-HTMLtree.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-SAX.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-SAX2.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-c14n.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-catalog.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-chvalid.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-debugXML.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-dict.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-encoding.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-entities.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-globals.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-hash.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-list.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-nanoftp.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-nanohttp.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-parser.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-parserInternals.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-pattern.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-relaxng.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-schemasInternals.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-schematron.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-threads.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-tree.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-uri.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-valid.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xinclude.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xlink.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlIO.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlautomata.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlerror.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlexports.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlmemory.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlmodule.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlreader.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlregexp.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlsave.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlschemas.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlschemastypes.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlstring.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlunicode.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlversion.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlwriter.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpath.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpathInternals.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpointer.html
%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2.devhelp2
%%PORTDOCS%%%%DOCSDIR%%/devhelp/right.png
%%PORTDOCS%%%%DOCSDIR%%/devhelp/style.css
%%PORTDOCS%%%%DOCSDIR%%/devhelp/up.png
%%PORTDOCS%%%%DOCSDIR%%/examples/index.html
%%PORTDOCS%%%%DOCSDIR%%/examples/io1.c
%%PORTDOCS%%%%DOCSDIR%%/examples/io2.c
%%PORTDOCS%%%%DOCSDIR%%/examples/parse1.c
%%PORTDOCS%%%%DOCSDIR%%/examples/parse2.c
%%PORTDOCS%%%%DOCSDIR%%/examples/parse3.c
%%PORTDOCS%%%%DOCSDIR%%/examples/parse4.c
%%PORTDOCS%%%%DOCSDIR%%/examples/reader1.c
%%PORTDOCS%%%%DOCSDIR%%/examples/reader2.c
%%PORTDOCS%%%%DOCSDIR%%/examples/reader3.c
%%PORTDOCS%%%%DOCSDIR%%/examples/reader4.c
%%PORTDOCS%%%%DOCSDIR%%/examples/testWriter.c
%%PORTDOCS%%%%DOCSDIR%%/examples/tree1.c
%%PORTDOCS%%%%DOCSDIR%%/examples/tree2.c
%%PORTDOCS%%%%DOCSDIR%%/examples/xpath1.c
%%PORTDOCS%%%%DOCSDIR%%/examples/xpath2.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apa.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apb.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apc.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apd.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ape.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apf.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/apg.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/aph.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/api.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s02.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s03.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s04.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s05.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s06.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s07.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s08.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s09.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/blank.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/1.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/10.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/2.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/3.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/4.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/5.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/6.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/7.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/8.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/9.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/caution.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/draft.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/home.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/important.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/next.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/note.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/prev.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/tip.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-blank.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-minus.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-plus.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/up.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/warning.png
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeaddattribute.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeaddkeyword.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeconvert.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includegetattribute.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includekeyword.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/includexpath.c
%%PORTDOCS%%%%DOCSDIR%%/tutorial/index.html
%%PORTDOCS%%%%DOCSDIR%%/tutorial/ix01.html
%%PORTDOCS%%%%DOCSDIR%%/xmlcatalog.html
%%PORTDOCS%%%%DOCSDIR%%/xmllint.html

View File

@ -1,24 +0,0 @@
PORTNAME= libapreq2
PORTVERSION= 2.17
PORTREVISION= 1
CATEGORIES= www devel
MASTER_SITES= APACHE_HTTPD/libapreq
MAINTAINER= apache@FreeBSD.org
COMMENT= Generic Apache2 Request Library
WWW= https://metacpan.org/dist/libapreq2
LICENSE= APACHE20
LIB_DEPENDS= libapr-1.so:devel/apr1 \
libaprutil-1.so:devel/apr1 \
libexpat.so:textproc/expat2
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --with-apache2-apxs=${APXS} --with-expat=${LOCALBASE}
INSTALL_TARGET= install-strip
USES= apache cpe libtool
CPE_VENDOR= apache
USE_LDCONFIG= yes
.include <bsd.port.mk>

View File

@ -1,3 +0,0 @@
TIMESTAMP = 1678731141
SHA256 (libapreq2-2.17.tar.gz) = 046487f084c12fa1c822affc5f7de56efed9b48905a426e631a6b949c114d86c
SIZE (libapreq2-2.17.tar.gz) = 849867

View File

@ -1,11 +0,0 @@
--- glue/Makefile.in.orig 2022-08-18 09:23:35 UTC
+++ glue/Makefile.in
@@ -479,7 +479,7 @@ perl_install:
perl_install:
cd perl; INSTALL=1 @PERL@ @PERL_OPTS@ Makefile.PL -apxs @APACHE2_APXS@ @MM_OPTS@
- cd perl; $(MAKE) install
+ cd perl; $(MAKE) pure_install
perl_clean:
-cd perl; $(MAKE) clean

View File

@ -1,13 +0,0 @@
--- glue/perl/Makefile.PL.orig 2022-08-18 09:18:20 UTC
+++ glue/perl/Makefile.PL
@@ -460,8 +460,8 @@ ModPerl::MM::WriteMakefile(
'NAME' => '$class',
'VERSION' => '$version',
'TYPEMAPS' => [qw(@$mp2_typemaps $typemap)],
- 'INC' => "-I$base_dir/glue/perl/xs -I$inc_dir -I$xs_dir $apache_includes",
- 'LIBS' => "$apreq_libs $apr_libs",
+ 'INC' => "-I$base_dir/glue/perl/xs -I$inc_dir -I$xs_dir $apache_includes -I\\\$(LOCALBASE)/%%APACHEINCLUDEDIR%%/modules/perl",
+ 'LIBS' => "$apreq_libs $apr_libs -L\\\$(LOCALBASE)/lib",
} ;
$txt .= "'depend' => $deps,\n" if ($deps) ;
$txt .= qq{

View File

@ -1,11 +0,0 @@
--- library/module_cgi.c.orig 2022-08-18 09:18:20 UTC
+++ library/module_cgi.c
@@ -354,7 +354,7 @@ static void init_body(apreq_handle_t *handle)
if (cl_header != NULL) {
char *dummy;
- apr_int64_t content_length = apr_strtoi64(cl_header, &dummy, 0);
+ apr_int64_t content_length = apr_strtoi64(cl_header, &dummy, 10);
if (dummy == cl_header || *dummy != 0) {
req->body_status = APREQ_ERROR_BADHEADER;

View File

@ -1,37 +0,0 @@
--- library/parser_multipart.c.orig 2022-08-18 09:18:20 UTC
+++ library/parser_multipart.c
@@ -425,7 +425,7 @@ APREQ_DECLARE_PARSER(apreq_parse_multipart)
if (cd != NULL) {
s = apreq_header_attribute(cd, "name", 4,
&name, &nlen);
- if (s == APR_SUCCESS && nlen) {
+ if (s == APR_SUCCESS) {
next_ctx->param_name = apr_pstrmemdup(pool, name,
nlen);
}
@@ -460,14 +460,14 @@ APREQ_DECLARE_PARSER(apreq_parse_multipart)
if (cd != NULL && strncmp(cd, "form-data", 9) == 0) {
s = apreq_header_attribute(cd, "name", 4, &name, &nlen);
- if (s != APR_SUCCESS || !nlen) {
+ if (s != APR_SUCCESS) {
ctx->status = MFD_ERROR;
goto mfd_parse_brigade;
}
s = apreq_header_attribute(cd, "filename",
8, &filename, &flen);
- if (s == APR_SUCCESS && flen) {
+ if (s == APR_SUCCESS) {
apreq_param_t *param;
param = apreq_param_make(pool, name, nlen,
@@ -497,7 +497,7 @@ APREQ_DECLARE_PARSER(apreq_parse_multipart)
s = apreq_header_attribute(cd, "filename",
8, &filename, &flen);
- if (s != APR_SUCCESS || !flen || !ctx->param_name) {
+ if (s != APR_SUCCESS || !ctx->param_name) {
ctx->status = MFD_ERROR;
goto mfd_parse_brigade;
}

View File

@ -1,319 +0,0 @@
--- library/t/parsers.c.orig 2022-08-18 09:18:20 UTC
+++ library/t/parsers.c
@@ -25,6 +25,7 @@ static apr_pool_t *p;
#define CRLF "\015\012"
static apr_pool_t *p;
+static apr_pool_t *test_pool;
static char url_data[] = "alpha=one&beta=two;omega=last%2";
@@ -152,10 +153,10 @@ static void parse_urlencoded(dAT, void *ctx)
apreq_parser_t *parser;
apr_table_t *body;
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
- ba = apr_bucket_alloc_create(p);
- bb = apr_brigade_create(p, ba);
- parser = apreq_parser_make(p, ba, URL_ENCTYPE, apreq_parse_urlencoded,
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
+ ba = apr_bucket_alloc_create(test_pool);
+ bb = apr_brigade_create(test_pool, ba);
+ parser = apreq_parser_make(test_pool, ba, URL_ENCTYPE, apreq_parse_urlencoded,
100, NULL, NULL, NULL);
APR_BRIGADE_INSERT_HEAD(bb,
@@ -178,6 +179,7 @@ static void parse_urlencoded(dAT, void *ctx)
AT_str_eq(apr_table_get(body,"beta"), "two");
AT_str_eq(apr_table_get(body,"omega"),"last+last");
+ apr_pool_clear(test_pool);
}
static void parse_multipart(dAT, void *ctx)
@@ -188,7 +190,7 @@ static void parse_multipart(dAT, void *ctx)
for (j = 0; j <= strlen(form_data); ++j) {
- ba = apr_bucket_alloc_create(p);
+ ba = apr_bucket_alloc_create(test_pool);
/* AT_localize checks the inner loop tests itself
* (and interprets any such failures as being fatal),
@@ -208,9 +210,9 @@ static void parse_multipart(dAT, void *ctx)
apr_status_t rv;
apr_bucket *e, *f;
- bb = apr_brigade_create(p, ba);
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
- parser = apreq_parser_make(p, ba, MFD_ENCTYPE
+ bb = apr_brigade_create(test_pool, ba);
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
+ parser = apreq_parser_make(test_pool, ba, MFD_ENCTYPE
"; charset=\"iso-8859-1\""
"; boundary=\"AaB03x\"",
apreq_parse_multipart,
@@ -247,7 +249,7 @@ static void parse_multipart(dAT, void *ctx)
AT_str_eq(val, "file1.txt");
t = apreq_value_to_param(val)->info;
vb = apreq_value_to_param(val)->upload;
- apr_brigade_pflatten(vb, &val2, &len, p);
+ apr_brigade_pflatten(vb, &val2, &len, test_pool);
AT_int_eq(len, strlen("... contents of file1.txt ..." CRLF));
AT_mem_eq(val2 ,"... contents of file1.txt ..." CRLF, len);
val = apr_table_get(t, "content-type");
@@ -257,11 +259,9 @@ static void parse_multipart(dAT, void *ctx)
apr_brigade_cleanup(bb);
}
-#ifdef APR_POOL_DEBUG
- apr_bucket_alloc_destroy(ba);
-#endif
AT_delocalize();
- apr_pool_clear(p);
+
+ apr_pool_clear(test_pool);
}
}
@@ -276,17 +276,17 @@ static void parse_disable_uploads(dAT, void *ctx)
apreq_parser_t *parser;
apreq_hook_t *hook;
- ba = apr_bucket_alloc_create(p);
- bb = apr_brigade_create(p, ba);
+ ba = apr_bucket_alloc_create(test_pool);
+ bb = apr_brigade_create(test_pool, ba);
e = apr_bucket_immortal_create(form_data, strlen(form_data), ba);
APR_BRIGADE_INSERT_HEAD(bb, e);
APR_BRIGADE_INSERT_TAIL(bb, apr_bucket_eos_create(bb->bucket_alloc));
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
- hook = apreq_hook_make(p, apreq_hook_disable_uploads, NULL, NULL);
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
+ hook = apreq_hook_make(test_pool, apreq_hook_disable_uploads, NULL, NULL);
- parser = apreq_parser_make(p, ba, MFD_ENCTYPE
+ parser = apreq_parser_make(test_pool, ba, MFD_ENCTYPE
"; charset=\"iso-8859-1\""
"; boundary=\"AaB03x\"",
apreq_parse_multipart,
@@ -305,6 +305,8 @@ static void parse_disable_uploads(dAT, void *ctx)
val = apr_table_get(body, "pics");
AT_is_null(val);
+
+ apr_pool_clear(test_pool);
}
@@ -316,8 +318,8 @@ static void parse_generic(dAT, void *ctx)
apreq_param_t *dummy;
apreq_parser_t *parser;
apr_table_t *body;
- apr_bucket_alloc_t *ba = apr_bucket_alloc_create(p);
- apr_bucket_brigade *bb = apr_brigade_create(p, ba);
+ apr_bucket_alloc_t *ba = apr_bucket_alloc_create(test_pool);
+ apr_bucket_brigade *bb = apr_brigade_create(test_pool, ba);
apr_bucket *e = apr_bucket_immortal_create(xml_data,
strlen(xml_data),
ba);
@@ -325,19 +327,21 @@ static void parse_generic(dAT, void *ctx)
APR_BRIGADE_INSERT_HEAD(bb, e);
APR_BRIGADE_INSERT_TAIL(bb, apr_bucket_eos_create(ba));
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
- parser = apreq_parser_make(p, ba, "application/xml",
+ parser = apreq_parser_make(test_pool, ba, "application/xml",
apreq_parse_generic, 1000, NULL, NULL, NULL);
rv = apreq_parser_run(parser, body, bb);
AT_int_eq(rv, APR_SUCCESS);
dummy = *(apreq_param_t **)parser->ctx;
AT_not_null(dummy);
- apr_brigade_pflatten(dummy->upload, &val, &vlen, p);
+ apr_brigade_pflatten(dummy->upload, &val, &vlen, test_pool);
AT_int_eq(vlen, strlen(xml_data));
AT_mem_eq(val, xml_data, vlen);
+
+ apr_pool_clear(test_pool);
}
static void hook_discard(dAT, void *ctx)
@@ -347,8 +351,8 @@ static void hook_discard(dAT, void *ctx)
apreq_parser_t *parser;
apreq_hook_t *hook;
apr_table_t *body;
- apr_bucket_alloc_t *ba = apr_bucket_alloc_create(p);
- apr_bucket_brigade *bb = apr_brigade_create(p, ba);
+ apr_bucket_alloc_t *ba = apr_bucket_alloc_create(test_pool);
+ apr_bucket_brigade *bb = apr_brigade_create(test_pool, ba);
apr_bucket *e = apr_bucket_immortal_create(xml_data,
strlen(xml_data),
ba);
@@ -356,10 +360,10 @@ static void hook_discard(dAT, void *ctx)
APR_BRIGADE_INSERT_HEAD(bb, e);
APR_BRIGADE_INSERT_TAIL(bb, apr_bucket_eos_create(ba));
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
- hook = apreq_hook_make(p, apreq_hook_discard_brigade, NULL, NULL);
- parser = apreq_parser_make(p, ba, "application/xml",
+ hook = apreq_hook_make(test_pool, apreq_hook_discard_brigade, NULL, NULL);
+ parser = apreq_parser_make(test_pool, ba, "application/xml",
apreq_parse_generic, 1000, NULL, hook, NULL);
@@ -369,6 +373,8 @@ static void hook_discard(dAT, void *ctx)
AT_not_null(dummy);
AT_not_null(dummy->upload);
AT_ok(APR_BRIGADE_EMPTY(dummy->upload), "brigade has no contents");
+
+ apr_pool_clear(test_pool);
}
@@ -388,18 +394,18 @@ static void parse_related(dAT, void *ctx)
apreq_parser_t *parser;
apreq_hook_t *xml_hook;
apreq_param_t *param;
- apr_bucket_alloc_t *ba = apr_bucket_alloc_create(p);
- apr_bucket_brigade *bb = apr_brigade_create(p, ba);
+ apr_bucket_alloc_t *ba = apr_bucket_alloc_create(test_pool);
+ apr_bucket_brigade *bb = apr_brigade_create(test_pool, ba);
apr_bucket *e = apr_bucket_immortal_create(rel_data,
strlen(rel_data),
bb->bucket_alloc);
APR_BRIGADE_INSERT_HEAD(bb, e);
APR_BRIGADE_INSERT_TAIL(bb, apr_bucket_eos_create(bb->bucket_alloc));
- xml_hook = apreq_hook_make(p, apreq_hook_apr_xml_parser, NULL, NULL);
+ xml_hook = apreq_hook_make(test_pool, apreq_hook_apr_xml_parser, NULL, NULL);
- body = apr_table_make(p, APREQ_DEFAULT_NELTS);
- parser = apreq_parser_make(p, ba, ct, apreq_parse_multipart,
+ body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
+ parser = apreq_parser_make(test_pool, ba, ct, apreq_parse_multipart,
1000, NULL, xml_hook, NULL);
rv = apreq_parser_run(parser, body, bb);
@@ -414,12 +420,12 @@ static void parse_related(dAT, void *ctx)
val = apr_table_get(param->info, "Content-Length");
AT_str_eq(val, "400");
AT_not_null(param->upload);
- apr_brigade_pflatten(param->upload, &val2, &vlen, p);
+ apr_brigade_pflatten(param->upload, &val2, &vlen, test_pool);
AT_int_eq(vlen, 400);
AT_mem_eq(val2, rel_data + 122, 400);
doc = *(apr_xml_doc **)xml_hook->ctx;
- apr_xml_to_text(p, doc->root, APR_XML_X2T_FULL,
+ apr_xml_to_text(test_pool, doc->root, APR_XML_X2T_FULL,
doc->namespaces, &ns_map, &val, &vlen);
AT_int_eq(vlen, 400 - 22);
AT_mem_eq(val, rel_data + 122 + 23, 400 - 23);
@@ -430,7 +436,7 @@ static void parse_related(dAT, void *ctx)
param = apreq_value_to_param(val);
AT_not_null(param);
AT_not_null(param->upload);
- apr_brigade_pflatten(param->upload, &val2, &vlen, p);
+ apr_brigade_pflatten(param->upload, &val2, &vlen, test_pool);
AT_int_eq(vlen, dlen);
AT_mem_eq(val2, data, vlen);
@@ -439,9 +445,11 @@ static void parse_related(dAT, void *ctx)
param = apreq_value_to_param(val);
AT_not_null(param);
AT_not_null(param->upload);
- apr_brigade_pflatten(param->upload, &val2, &vlen, p);
+ apr_brigade_pflatten(param->upload, &val2, &vlen, test_pool);
AT_int_eq(vlen, dlen);
AT_mem_eq(val2, data, vlen);
+
+ apr_pool_clear(test_pool);
}
typedef struct {
@@ -461,9 +469,9 @@ static void parse_mixed(dAT, void *ctx)
array_elt *elt;
char ct[] = MFD_ENCTYPE "; charset=\"iso-8859-1\"; boundary=\"AaB03x\"";
apreq_parser_t *parser;
- apr_table_t *body = apr_table_make(p, APREQ_DEFAULT_NELTS);
- apr_bucket_alloc_t *ba = apr_bucket_alloc_create(p);
- apr_bucket_brigade *bb = apr_brigade_create(p, ba);
+ apr_table_t *body = apr_table_make(test_pool, APREQ_DEFAULT_NELTS);
+ apr_bucket_alloc_t *ba = apr_bucket_alloc_create(test_pool);
+ apr_bucket_brigade *bb = apr_brigade_create(test_pool, ba);
apr_bucket *e = apr_bucket_immortal_create(mix_data,
strlen(mix_data),
bb->bucket_alloc);
@@ -471,7 +479,7 @@ static void parse_mixed(dAT, void *ctx)
APR_BRIGADE_INSERT_HEAD(bb, e);
APR_BRIGADE_INSERT_TAIL(bb, apr_bucket_eos_create(bb->bucket_alloc));
- parser = apreq_parser_make(p, ba, ct, apreq_parse_multipart,
+ parser = apreq_parser_make(test_pool, ba, ct, apreq_parse_multipart,
1000, NULL, NULL, NULL);
rv = apreq_parser_run(parser, body, bb);
@@ -490,7 +498,7 @@ static void parse_mixed(dAT, void *ctx)
param = apreq_value_to_param(val);
AT_not_null(param->upload);
- apr_brigade_pflatten(param->upload, &val2, &vlen, p);
+ apr_brigade_pflatten(param->upload, &val2, &vlen, test_pool);
AT_int_eq(vlen, strlen("... contents of file1.txt ..."));
AT_mem_eq(val2, "... contents of file1.txt ...", vlen);
@@ -503,10 +511,11 @@ static void parse_mixed(dAT, void *ctx)
param = apreq_value_to_param(elt->val);
AT_not_null(param->upload);
- apr_brigade_pflatten(param->upload, &val2, &vlen, p);
+ apr_brigade_pflatten(param->upload, &val2, &vlen, test_pool);
AT_int_eq(vlen, strlen("...contents of file2.gif..."));
AT_mem_eq(val2, "...contents of file2.gif...", vlen);
+ apr_pool_clear(test_pool);
}
@@ -514,7 +523,6 @@ int main(int argc, char *argv[])
int main(int argc, char *argv[])
{
- apr_pool_t *test_pool;
unsigned i, plan = 0;
dAT;
at_test_t test_list [] = {
@@ -532,10 +540,8 @@ int main(int argc, char *argv[])
atexit(apr_terminate);
apr_pool_create(&p, NULL);
- apr_pool_create(&test_pool, NULL);
apreq_initialize(p);
-
AT = at_create(0, at_report_stdout_make());
for (i = 0; i < sizeof(test_list) / sizeof(at_test_t); ++i)
@@ -543,10 +549,14 @@ int main(int argc, char *argv[])
AT_begin(plan);
+ apr_pool_create(&test_pool, p);
for (i = 0; i < sizeof(test_list) / sizeof(at_test_t); ++i)
AT_run(&test_list[i]);
+ apr_pool_destroy(test_pool);
AT_end();
+
+ apr_pool_destroy(p);
return 0;
}

View File

@ -1,58 +0,0 @@
--- library/t/util.c.orig 2022-08-18 09:18:20 UTC
+++ library/t/util.c
@@ -152,7 +152,7 @@ static void test_cp1252_to_utf8(dAT, void *ctx)
static void test_cp1252_to_utf8(dAT, void *ctx)
{
char src1[] = "%C3%80%E3%82%a2"; /* A_GRAVE KATAKANA_A as utf8 */
- char src2[5];
+ char src2[6]; /* + '\0' */
unsigned char expect[16];
apr_size_t slen;
@@ -270,7 +270,9 @@ static void test_header_attribute(dAT, void *ctx)
static void test_header_attribute(dAT, void *ctx)
{
- const char hdr[] = "name=\"filename=foo\"; filename=\"quux.txt\"";
+ const char hdr[] = "form-data; name=\"filename=foo\"; filename=\"quux.txt\"";
+ const char opera[] = "form-data; name=\"foo\"; filename=\"\"";
+ const char empty[] = "form-data; name=\"\"; filename=\"\"";
const char *val;
apr_size_t vlen;
@@ -278,12 +280,25 @@ static void test_header_attribute(dAT, void *ctx)
APR_SUCCESS);
AT_int_eq(vlen, 12);
AT_mem_eq("filename=foo", val, 12);
-
AT_int_eq(apreq_header_attribute(hdr, "filename", 8, &val, &vlen),
APR_SUCCESS);
AT_int_eq(vlen, 8);
AT_mem_eq("quux.txt", val, 8);
+ AT_int_eq(apreq_header_attribute(opera, "name", 4, &val, &vlen),
+ APR_SUCCESS);
+ AT_int_eq(vlen, 3);
+ AT_mem_eq("foo", val, 3);
+ AT_int_eq(apreq_header_attribute(opera, "filename", 8, &val, &vlen),
+ APR_SUCCESS);
+ AT_int_eq(vlen, 0);
+
+ AT_int_eq(apreq_header_attribute(empty, "name", 4, &val, &vlen),
+ APR_SUCCESS);
+ AT_int_eq(vlen,0);
+ AT_int_eq(apreq_header_attribute(empty, "filename", 8, &val, &vlen),
+ APR_SUCCESS);
+ AT_int_eq(vlen, 0);
}
static void test_brigade_concat(dAT, void *ctx)
@@ -315,7 +330,7 @@ int main(int argc, char *argv[])
{ dT(test_join, 0) },
{ dT(test_brigade_fwrite, 0) },
{ dT(test_file_mktemp, 0) },
- { dT(test_header_attribute, 6) },
+ { dT(test_header_attribute, 15) },
{ dT(test_brigade_concat, 0) },
};

View File

@ -1,11 +0,0 @@
--- module/Makefile.in.orig 2022-08-18 09:23:35 UTC
+++ module/Makefile.in
@@ -100,7 +100,7 @@ CONFIG_CLEAN_VPATH_FILES =
CONFIG_HEADER = $(top_builddir)/include/apreq_config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
-PROGRAMS = $(noinst_PROGRAMS)
+PROGRAMS =
test_cgi_SOURCES = test_cgi.c
test_cgi_OBJECTS = test_cgi.$(OBJEXT)
test_cgi_LDADD = $(LDADD)

View File

@ -1,11 +0,0 @@
--- module/apache2/filter.c.orig 2022-08-18 09:18:20 UTC
+++ module/apache2/filter.c
@@ -125,7 +125,7 @@ void apreq_filter_init_context(ap_filter_t *f)
if (cl_header != NULL) {
char *dummy;
- apr_uint64_t content_length = apr_strtoi64(cl_header,&dummy,0);
+ apr_uint64_t content_length = apr_strtoi64(cl_header,&dummy,10);
if (dummy == NULL || *dummy != 0) {
ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_EGENERAL, r,

View File

@ -1,14 +0,0 @@
--- module/t/conf/extra.conf.in.orig 2022-08-18 09:18:20 UTC
+++ module/t/conf/extra.conf.in
@@ -2,7 +2,10 @@
ScriptAlias /cgi-bin/ "@ServerRoot@/cgi-bin/"
</IfModule>
-
+<IfModule mod_dumpio.c>
+ DumpIoInput on
+ DumpIoOutput on
+</IfModule>
<Directory "@ServerRoot@/cgi-bin">
AllowOverride None

View File

@ -1,10 +0,0 @@
libapreq2 - Generic Apache2 Request Library
This package contains modules for manipulating client request data via
the Apache API with Perl and C. Functionality includes:
- parsing of application/x-www-form-urlencoded data
- parsing of multipart/form-data
- parsing of HTTP Cookies
See also: https://httpd.apache.org/apreq/

View File

@ -1,16 +0,0 @@
bin/apreq2-config
%%APACHEINCLUDEDIR%%/apreq2/apreq_module_apache2.h
include/apreq2/apreq.h
include/apreq2/apreq_cookie.h
include/apreq2/apreq_error.h
include/apreq2/apreq_module.h
include/apreq2/apreq_param.h
include/apreq2/apreq_parser.h
include/apreq2/apreq_util.h
include/apreq2/apreq_version.h
lib/libapreq2.a
lib/libapreq2.so
lib/libapreq2.so.3
lib/libapreq2.so.3.8.1
%%APACHEMODDIR%%/mod_apreq2.a
%%APACHEMODDIR%%/mod_apreq2.so