From owner-freebsd-ports@FreeBSD.ORG Tue Sep 9 19:44:55 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5AB63153; Tue, 9 Sep 2014 19:44:55 +0000 (UTC) Received: from be-well.ilk.org (be-well.ilk.org [23.30.133.173]) by mx1.freebsd.org (Postfix) with ESMTP id 350D2D09; Tue, 9 Sep 2014 19:44:54 +0000 (UTC) Received: from lowell-desk.lan (lowell-desk.lan [172.30.250.41]) by be-well.ilk.org (Postfix) with ESMTP id 6AF9433C1E; Tue, 9 Sep 2014 15:44:43 -0400 (EDT) Received: by lowell-desk.lan (Postfix, from userid 1147) id C819A39822; Tue, 9 Sep 2014 15:44:42 -0400 (EDT) From: Lowell Gilbert To: freebsd-ports@freebsd.org Subject: www/mod_dnssd broken for apache24 Date: Tue, 09 Sep 2014 15:44:42 -0400 Message-ID: <44lhpsd1ed.fsf@lowell-desk.lan> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain Cc: des@freebsd.org X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Sep 2014 19:44:55 -0000 There are a couple of problems with the mod_dnssd port, but I'm not sure what the best way to fix them would be. One is that an Apache internal function used by the module was renamed in Apache 2.4, so the code needs to depend on the Apache version in use. The following patch works for me, but is inappropriate for Apache 2.2. --- src/mod_dnssd.c~ 2009-01-27 21:24:00.000000000 -0500 +++ src/mod_dnssd.c 2014-09-09 15:23:08.000000000 -0400 @@ -576,7 +576,7 @@ ap_assert(d); - unixd_setup_child(); + ap_unixd_setup_child(); if (pipe(sigterm_pipe_fds) < 0) { ap_log_error(APLOG_MARK, APLOG_ERR, 0, r.main_server, "pipe() failed: %s", strerror(errno)); The other problem is that the port rewrites the httpd.conf file (to include the module), and the path is now wrong in the era of staging. I have a feeling that the "right" solution is to avoid writing into /usr/local directly, but that would be considerably less convenient. Any suggestions?