The port has been updated to version 1.3.5. Additional changes introduced in this port:
- Change the daemon account from uucp to _iaxmodem - Include an rc.d script Advice for existing installations:- Remove/disable the method you to start the service before enabling the iaxmodem service.
- Review existing configuration files and update the owner uid to _iaxmodem
owner _iaxmodem:dialer
Refer to the sample configuration file
/usr/local/share/examples/iaxmodem/iaxmodem-cfg.ttyIAX
Observations:If existing configuration files remain unaltered and the legacy uucp account is removed, the uid of the modem device files will be set to root.
lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX -> /dev/ttyp1 lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX2 -> /dev/ttyp2 lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX3 -> /dev/ttyp0
crw-rw---- 1 root dialer 5, 0 Feb 18 17:40 /dev/ttyp0
crw-rw---- 1 _iaxmodem dialer 5, 1 Feb 18 17:40 /dev/ttyp1
crw-rw---- 1 root dialer 5, 2 Feb 18 17:40 /dev/ttyp2
When IAXmodem is used with HylaFAX the faxgetty process will change the
ownership of the device to _hylafax. So far, no problems have been
observed with this behaviour.
lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX -> /dev/ttyp1 lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX2 -> /dev/ttyp2 lrwxr-xr-x 1 root wheel 10 Feb 18 17:40 /dev/ttyIAX3 -> /dev/ttyp0
crw-rw---- 1 _hylafax dialer 5, 0 Feb 18 18:00 /dev/ttyp0
crw-rw---- 1 _iaxmodem dialer 5, 1 Feb 18 17:40 /dev/ttyp1
crw-rw---- 1 _hylafax dialer 5, 2 Feb 18 18:00 /dev/ttyp2
iaxmodem-1.3.5.tar.gz
Description: application/gzip
diff -Nupr /usr/ports/telephony/iaxmodem/Makefile ./Makefile
--- /usr/ports/telephony/iaxmodem/Makefile Tue Nov 7 22:19:46 2023
+++ ./Makefile Wed Feb 18 17:01:35 2026
@@ -1,9 +1,8 @@
COMMENT= a software fax modem that uses an IAX channel
-DISTNAME= iaxmodem-1.3.4
+DISTNAME= iaxmodem-1.3.5
CATEGORIES= telephony
SITES= ${SITE_SOURCEFORGE:=iaxmodem/}
-REVISION= 0
HOMEPAGE= https://iaxmodem.sourceforge.net/
diff -Nupr /usr/ports/telephony/iaxmodem/distinfo ./distinfo
--- /usr/ports/telephony/iaxmodem/distinfo Tue Apr 18 22:19:39 2023
+++ ./distinfo Sun Feb 15 23:12:16 2026
@@ -1,2 +1,2 @@
-SHA256 (iaxmodem-1.3.4.tar.gz) = kA3i93ByvOAnhv5/TU3f1Ln1/jJVsTGXcjgwma3uVjM=
-SIZE (iaxmodem-1.3.4.tar.gz) = 2699179
+SHA256 (iaxmodem-1.3.5.tar.gz) = +kWKXlwxQbKeuIDaItMl3v1TyefFYBYuwA4F7sQUNRw=
+SIZE (iaxmodem-1.3.5.tar.gz) = 2718449
diff -Nupr /usr/ports/telephony/iaxmodem/patches/patch-config_ttyIAX
./patches/patch-config_ttyIAX
--- /usr/ports/telephony/iaxmodem/patches/patch-config_ttyIAX Thu Jan 1
08:00:00 1970
+++ ./patches/patch-config_ttyIAX Mon Feb 16 13:01:21 2026
@@ -0,0 +1,23 @@
+--- config.ttyIAX.orig Wed Jun 24 22:29:03 2015
++++ config.ttyIAX Mon Feb 16 13:00:24 2026
+@@ -6,16 +6,17 @@ InternationalPrefix: 011
+ DialStringRules: etc/dialrules
+ ServerTracing: 0xFFF
+ SessionTracing: 0xFFF
+-RecvFileMode: 0600
++RecvFileMode: 0640
+ LogFileMode: 0600
+-DeviceMode: 0600
++DeviceMode: 0660
+ RingsBeforeAnswer: 1
+ SpeakerVolume: off
+-GettyArgs: "-h %l dx_%s"
++GettyArgs: "std.%s"
+ LocalIdentifier: "IAXmodem"
+ TagLineFont: etc/lutRS18.pcf
+ TagLineFormat: "From %%l|%c|Page %%P of %%T"
+ MaxRecvPages: 200
++Class1JBIGSupport: receive
+ #
+ #
+ # Modem-related stuff: should reflect modem command interface
diff -Nupr /usr/ports/telephony/iaxmodem/patches/patch-iaxmodem-cfg_ttyIAX
./patches/patch-iaxmodem-cfg_ttyIAX
--- /usr/ports/telephony/iaxmodem/patches/patch-iaxmodem-cfg_ttyIAX Sat Mar
12 03:58:31 2022
+++ ./patches/patch-iaxmodem-cfg_ttyIAX Tue Feb 17 03:05:35 2026
@@ -1,9 +1,9 @@
---- iaxmodem-cfg.ttyIAX.orig Sun Apr 20 22:18:51 2008
-+++ iaxmodem-cfg.ttyIAX Sun Apr 20 22:19:30 2008
+--- iaxmodem-cfg.ttyIAX.orig Wed Jun 24 22:29:03 2015
++++ iaxmodem-cfg.ttyIAX Fri Feb 13 07:36:57 2026
@@ -1,5 +1,5 @@
device /dev/ttyIAX
-owner uucp:uucp
-+owner uucp:dialer
++owner _iaxmodem:dialer
mode 660
port 4570
refresh 300
diff -Nupr /usr/ports/telephony/iaxmodem/patches/patch-iaxmodem_c
./patches/patch-iaxmodem_c
--- /usr/ports/telephony/iaxmodem/patches/patch-iaxmodem_c Tue Apr 18
22:19:39 2023
+++ ./patches/patch-iaxmodem_c Sun Feb 15 23:12:16 2026
@@ -35,7 +35,7 @@ Index: iaxmodem.c
#ifndef MODEMVER
#define MODEMVER "0.0.0"
-@@ -169,6 +163,9 @@ int logmode = S_IRUSR | S_IWUSR | S_IRGRP;
+@@ -184,6 +178,9 @@
#include "compat/headers.h"
#include "sys/stropts.h"
#endif
@@ -45,13 +45,20 @@ Index: iaxmodem.c
#ifdef __FreeBSD__
#include "compat/strndup-freebsd.c"
-@@ -697,7 +694,8 @@ iaxmodem(const char *config, int nondaemon)
+@@ -997,12 +994,13 @@
int fd;
char logfile[256];
- printlog(LOG_ERROR, "Modem started\n");
+ printlog(LOG_ERROR, "Modem %s started\n", config);
-+ setproctitle("uucp [%s]",config);
++ setproctitle("_iaxmodem [%s]",config);
- pwent = getpwnam("uucp");
+- pwent = getpwnam("uucp");
++ pwent = getpwnam("_iaxmodem");
+
+ if (pwent == NULL) {
+- printlog(LOG_ERROR, "Fatal error: uucp user not found in passwd
file\n");
++ printlog(LOG_ERROR, "Fatal error: _iaxmodem user not found in passwd
file\n");
+ _exit(-1);
+ }
diff -Nupr /usr/ports/telephony/iaxmodem/pkg/PLIST ./pkg/PLIST
--- /usr/ports/telephony/iaxmodem/pkg/PLIST Sat Mar 12 03:58:31 2022
+++ ./pkg/PLIST Wed Feb 18 17:05:00 2026
@@ -1,10 +1,15 @@
+@newgroup _iaxmodem:903
+@newuser _iaxmodem:903:_iaxmodem::IAXmodem Daemon:/nonexistent:/sbin/nologin
@bin bin/iaxmodem
@man man/man1/iaxmodem.1
share/doc/iaxmodem/
share/doc/iaxmodem/FAQ
share/doc/iaxmodem/README
share/examples/iaxmodem/
-@sample ${SYSCONFDIR}/iaxmodem/
share/examples/iaxmodem/hylafax-cfg.ttyIAX
share/examples/iaxmodem/iaxmodem-cfg.ttyIAX
+@mode 750
+@sample ${SYSCONFDIR}/iaxmodem/
+@mode
@sample ${SYSCONFDIR}/iaxmodem/ttyIAX0
+@rcscript ${RCDIR}/iaxmodem
diff -Nupr /usr/ports/telephony/iaxmodem/pkg/iaxmodem.rc ./pkg/iaxmodem.rc
--- /usr/ports/telephony/iaxmodem/pkg/iaxmodem.rc Thu Jan 1 08:00:00 1970
+++ ./pkg/iaxmodem.rc Tue Feb 17 03:22:34 2026
@@ -0,0 +1,26 @@
+#!/bin/ksh
+#
+
+daemon="${TRUEPREFIX}/bin/iaxmodem"
+
+. /etc/rc.d/rc.subr
+
+
+pexp="$(eval echo ${daemon})"
+rc_reload=
+rc_reload_signal=HUP
+rc_stop_signal=TERM
+
+rc_start() {
+ rc_exec "${daemon}"
+}
+
+rc_reload() {
+ pkill -${rc_reload_signal} -xf "${pexp}"
+}
+
+rc_stop() {
+ pkill -${rc_stop_signal} -xf "${pexp}"
+}
+
+rc_cmd $1
