nwarchive: move private xattrs to org namespace
All checks were successful
Source release / source-package (push) Successful in 49s
All checks were successful
Source release / source-package (push) Successful in 49s
Rename the unreleased mars_nwe private archive and file-info extended-attribute keys from the Linux user.mars_nwe.* spelling to the Netatalk-style org.mars-nwe.* namespace. This keeps the mars_nwe metadata namespace aligned with the AFP/libatalk backend direction, where Netatalk owns org.netatalk.* keys and mars_nwe-owned metadata should live under org.mars-nwe.* instead of looking like ordinary user application attributes. No legacy read fallback is added because the user.mars_nwe.* names have only existed in local test builds and have not shipped in a release. New writes therefore use only org.mars-nwe.archive and org.mars-nwe.fileinfo, avoiding migration complexity before AFP metadata persistence is introduced. Document the namespace decision in TODO.md so future AFP xattr work can build on org.mars-nwe.afp.* or a compact org.mars-nwe.afp.metadata record rather than adding new user.mars_nwe.* keys. Tests: cmake --build build-xattr-off --target nwserv; cmake --build build-xattr-off --target all reaches the existing missing gdbm.h dependency while nwconn has already been built in this tree.
This commit is contained in:
7
TODO.md
7
TODO.md
@@ -252,6 +252,10 @@ Current status:
|
||||
- Optional build-time detection/linking for Netatalk/libatalk exists as a first
|
||||
local metadata backend hook. It is deliberately not an AFP protocol
|
||||
implementation yet.
|
||||
- Existing mars_nwe private xattr payloads use the `org.mars-nwe.*`
|
||||
namespace (`org.mars-nwe.archive` and `org.mars-nwe.fileinfo`) rather than
|
||||
the unreleased test-only `user.mars_nwe.*` names. There is no legacy read
|
||||
fallback because the old names never shipped outside local test systems.
|
||||
- NetWare AFP calls are NCP entry points for Mac namespace semantics on a
|
||||
NetWare volume, not transport-level AFP proxy calls to `afpd`.
|
||||
|
||||
@@ -267,6 +271,9 @@ Follow-up:
|
||||
data/resource fork and Finder Info semantics.
|
||||
- Replace the temporary stat-derived AFP entry-id fallback with a persistent
|
||||
CNID/directory-id mapping once the libatalk/CNID backend is integrated.
|
||||
- Put future mars_nwe-owned AFP metadata under `org.mars-nwe.afp.*` (or a
|
||||
compact `org.mars-nwe.afp.metadata` record) and keep Netatalk-owned metadata
|
||||
under Netatalk's own `org.netatalk.*` keys.
|
||||
- Extend the Linux AFP smoke tests once additional AFP subfunctions are
|
||||
implemented, especially Finder Info updates, fork open/read/write paths,
|
||||
resource-fork handling, and broader directory-scan edge cases.
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include <sys/xattr.h>
|
||||
#endif
|
||||
|
||||
#define MARS_NWE_ARCHIVE_XATTR "user.mars_nwe.archive"
|
||||
#define MARS_NWE_ARCHIVE_XATTR "org.mars-nwe.archive"
|
||||
#define MARS_NWE_ARCHIVE_VERSION 1
|
||||
|
||||
typedef struct {
|
||||
@@ -148,7 +148,7 @@ int mars_nwe_set_archive_info(char *unixname,
|
||||
}
|
||||
|
||||
|
||||
#define MARS_NWE_FILEINFO_XATTR "user.mars_nwe.fileinfo"
|
||||
#define MARS_NWE_FILEINFO_XATTR "org.mars-nwe.fileinfo"
|
||||
#define MARS_NWE_FILEINFO_VERSION 1
|
||||
|
||||
typedef struct {
|
||||
|
||||
Reference in New Issue
Block a user