Hi, can you add the file /etc/pam.d/netatalk in the list of backup files? I need to modify it to use a different authentification method. Thanks.
Search Criteria
Package Details: netatalk 4.0.0-1
Package Actions
| Git Clone URL: | https://aur.archlinux.org/netatalk.git (read-only, click to copy) |
|---|---|
| Package Base: | netatalk |
| Description: | Open-source implementation of the Apple Filing Protocol |
| Upstream URL: | https://netatalk.io |
| Keywords: | afp apple mac macos |
| Licenses: | GPL-2.0-or-later |
| Conflicts: | netatalk-ddp, netatalk2 |
| Submitter: | Snowman |
| Maintainer: | denn |
| Last Packager: | denn |
| Votes: | 99 |
| Popularity: | 0.49 |
| First Submitted: | 2007-03-31 06:19 (UTC) |
| Last Updated: | 2024-10-04 14:28 (UTC) |
Dependencies (25)
- acl (acl-gitAUR)
- avahi
- bash (bash-devel-static-gitAUR, bash-devel-gitAUR, busybox-coreutilsAUR, bash-gitAUR)
- db5.3
- glib2 (glib2-gitAUR, glib2-selinuxAUR, glib2-patched-thumbnailerAUR)
- glibc (glibc-gitAUR, glibc-linux4AUR, glibc-eacAUR, glibc-eac-binAUR, glibc-eac-rocoAUR)
- libevent (libevent-gitAUR)
- libgcrypt
- libldap
- libxcrypt (libxcrypt-gitAUR)
- pam (pam-selinuxAUR)
- perl (perl-gitAUR)
- perl-net-dbus (perl-net-dbus-gitAUR)
- docbook-xsl (make)
- meson (meson-gitAUR) (make)
- unicode-character-database (make)
- cracklib (optional) – Weak password detection
- krb5 (krb5-gitAUR) (optional) – Kerberos user authentication support
- libcups (libcups-gitAUR, cups-gitAUR, libcups-gssapiAUR) (optional) – Network printer queues support
- libtirpc (optional) – Quota support
- Show 5 more dependencies...
Required by (0)
Sources (2)
jihem commented on 2024-08-06 10:07 (UTC)
fuhry commented on 2024-06-25 14:29 (UTC)
https://gist.github.com/fuhry/10d3a9d0cfed6d6463c5d6c10abaf1c0
Patch to build against libgcrypt 1.11, based on https://github.com/Netatalk/netatalk/pull/1132
rushvora commented on 2024-06-24 18:40 (UTC)
When I try to update this package, I get an error saying could not find all required packages: libgcrypt <1.11.
I also see the below message.
:: Searching AUR for updates...
-> No AUR package found for libgcrypt<1.11
VorpalWay commented on 2023-08-22 07:11 (UTC)
Hi, I started creating a package for netatalk2 (as netatalk 3.x doesn't support older Macs). I noticed a very unfortunate line in this PKGBUILD however:
replaces=('netatalk-git' 'netatalk2')
That is going to be an issue. It would be better to change that to a conflicts
jac_cbi commented on 2022-05-31 15:25 (UTC)
I can confirm that the latest update to the AUR (3.1.13-3) does indeed work. This is the relevant fix:
@@ -1637,14 +1650,21 @@ void *ad_entry(const struct adouble *ad, int eid)
size_t len = ad_getentrylen(ad, eid);
bool valid;
+ if (bufsize == 0) {
+ bufsize = sizeof(ad->ad_data) - (off + len);
+ }
+
valid = ad_entry_check_size(eid, bufsize, off, len);
if (!valid) {
Which looks like it does fix the problem, but I'm really hoping upstream digs deeper and locates the initialization of ad where ad->valid_data_len is left at zero or the call site where it's changed to zero.
jac_cbi commented on 2022-05-27 15:09 (UTC)
With the patch more complete patch from FreeBSD (just more logging info, no other logic changes from first patch), I get the following logs:
May 27 10:58:49.152479 afpd[18141] {ad_open.c:1639} (error:ad): ad_entry_check_size overflow (122 + 32 > 0)
May 27 10:58:49.152605 afpd[18141] {ad_open.c:1655} (error:ad): ad_entry: not valid
So, it would appear that ad->valid_data_len is 0 prior to ad_entry_check_size() getting called. I don't know enough about the code to say wether that's normal or not. :-/
Anywho, here's the patch for curious:
--- libatalk/adouble/ad_open.c.orig 2022-05-26 17:51:48.604464910 -0400
+++ libatalk/adouble/ad_open.c 2022-05-27 10:51:33.467798497 -0400
@@ -1574,6 +1574,8 @@
uint32_t required_len;
if (eid >= ADEID_MAX) {
+ LOG(log_error, logtype_ad, "ad_entry_check_size %d is greater than %d",
+ eid, ADEID_MAX);
return false;
}
if (got_len == 0) {
@@ -1585,6 +1587,7 @@
* Shouldn't happen: implicitly initialized to zero because
* explicit initializer missing.
*/
+ LOG(log_error, logtype_ad, "ad_entry_check_size explicit initializer missing");
return false;
}
if (ad_checks[eid].expected_len == -1) {
@@ -1594,6 +1597,8 @@
if (ad_checks[eid].fixed_size) {
if (ad_checks[eid].expected_len != got_len) {
/* Wrong size fo fixed size entry. */
+ LOG(log_error, logtype_ad, "ad_entry_check_size wrong size to fixed size entry (%d != %d)",
+ ad_checks[eid].expected_len, got_len);
return false;
}
required_len = got_len;
@@ -1604,12 +1609,16 @@
* Too small for variable sized entry with
* minimum size.
*/
+ LOG(log_error, logtype_ad, "ad_entry_check_size too small for variable sized entry (%d < %d)",
+ got_len, ad_checks[eid].expected_len);
return false;
}
required_len = got_len;
} else {
if (got_len > ad_checks[eid].expected_len) {
/* Too big for variable sized entry. */
+ LOG(log_error, logtype_ad, "ad_entry_check_size too big for variable sized entry (%d > %d)",
+ got_len, ad_checks[eid].expected_len);
return false;
}
/*
@@ -1621,10 +1630,14 @@
}
if (off + required_len < off) {
/* wrap around */
+ LOG(log_error, logtype_ad, "ad_entry_check_size wrap around (%d + %d < %d)",
+ off, required_len, off);
return false;
}
if (off + required_len > bufsize) {
/* overflow */
+ LOG(log_error, logtype_ad, "ad_entry_check_size overflow (%d + %d > %d)",
+ off, required_len, bufsize);
return false;
}
return true;
@@ -1639,10 +1652,7 @@
valid = ad_entry_check_size(eid, bufsize, off, len);
if (!valid) {
- return NULL;
- }
-
- if (off == 0 || len == 0) {
+ LOG(log_error, logtype_ad, "ad_entry: not valid");
return NULL;
}
jac_cbi commented on 2022-05-26 22:03 (UTC) (edited on 2022-05-26 22:07 (UTC) by jac_cbi)
Took the gist from here:
https://cgit.freebsd.org/ports/commit/?id=ad0b2e636d9ebf0bdcfdb30933fa0658fa657b17 (last hunk is what is relevant)
--- libatalk/adouble/ad_open.c.orig 2022-05-26 17:51:48.604464910 -0400
+++ libatalk/adouble/ad_open.c 2022-05-26 17:53:32.887798244 -0400
@@ -1639,10 +1639,7 @@
valid = ad_entry_check_size(eid, bufsize, off, len);
if (!valid) {
- return NULL;
- }
-
- if (off == 0 || len == 0) {
+ LOG(log_error, logtype_ad, "ad_entry: not valid");
return NULL;
}
EDIT: WIP. It built fine, and produced the log message, but it looks like I need to add more of the logging that the FreeBSD patch had
K4ib4 commented on 2022-05-21 15:41 (UTC)
Same problem on 3.1.13 - reverting back to 3.1.12-8 works fine.
Pinned Comments