Files
mars-nwe/nwnss-audit.md
2026-06-19 10:21:51 +02:00

174 KiB

libnwnss import audit checklist

This document is the living audit checklist for imported NSS sources in src/nwnss and include/nwnss. It is intentionally conservative: a file is AUDITED only after the current Mars tree was compared against the intended NSS provenance or explicitly accepted as a Mars port, and the relevant behavior has test coverage or a documented reason why direct testing is not yet possible.

Audit rule:

  • Imported Novell NSS .c, .h and .c.h files should stay as close to the original sources as possible.
  • Allowed changes in imported Novell files are limited to compile fixes, modern compiler callback casts, include path fixes, and explicit NSS_USERSPACE guards.
  • Real Linux kernel disk/block/VFS I/O stays in the source, but is disabled for the default userspace build until it is ported to the Mars userspace I/O layer.
  • Missing external services may be implemented only as clearly named Mars ports, in their own files, with comments explaining why no original NSS provider is available and with tests in the same audit block.
  • Header files should not be broadly rewritten to hide compile errors. Prefer local .c compile fixes or private Mars compat headers.

Status legend:

  • AUDITED: checked and currently accepted.
  • PARTIAL: checked only for the recent touched sub-area; full file diff is still open.
  • TODO: imported/current file is listed but not yet audited file-by-file.
  • PORT: intentionally non-Novell implementation.
  • TEMP: temporary transition file that must shrink or disappear.
  • ORIG+FIX? / ORIG header? / ORIG sharedsrc?: expected provenance, not yet confirmed in this audit checklist.

Current inventory summary:

  • AUDITED: 522 entries
  • PARTIAL: 0 entries
  • TODO: 0 entries
  • TEMP: 4 entries
  • Total listed entries: 526

Audit policies

Header policy

Header files imported from NSS should stay complete and close to the original source, even when many declarations are not used by the current libnwnss build yet. Unused declarations are useful for later imports and should not be removed to hide compile errors. Header changes are allowed only for concrete compile conflicts, include-path fixes, or narrowly scoped NSS_USERSPACE compatibility. Prefer local .c compile fixes or private Mars compat headers over rewriting public NSS headers.

Source policy

For .c and sharedsrc/*.c.h files, original NSS provenance is preferred. When a symbol is missing, search the complete NSS and nss-common source set, including public_core/sharedsrc/*.c.h and the original makefile wrapper pattern, before adding or keeping a Mars port. Source code may be guarded for NSS_USERSPACE only where the original Linux kernel path can run in userspace without real kernel disk/block/VFS I/O. Real disk/block/VFS I/O code stays in the tree but remains disabled in the default userspace build until it is ported to the Mars userspace I/O layer.

Userspace/backend companion split policy

For LSA/XAttr, COMN I/O, Beast I/O, cache backends and later NSS imports, keep imported original NSS files close to their source provenance. Do not put host filesystem, OtherFS, sidecar, FUSE, io_uring or runtime-cache policy directly into the original import file. Add only narrow, explicit callouts or decision points there, and choose the companion suffix by role rather than calling every missing backend piece *Userspace.c.

  • *Userspace.c / *.h is for libnwfs/Mars-NCP/OtherFS/HostFS-facing adapter boundaries that make NSS provider operations usable by the Mars wrapper.
  • *Fuse.c / *.h is for FUSE/nwnssmount-facing provider callbacks and inode/dentry-like request adaptation.
  • *IoUring.c / *.h is for concrete Linux direct/block/file I/O execution: read/write/flush/fsync, registered files/buffers and submit/completion logic.
  • *Runtime.c / *.h is for NSS runtime semantics that replace former kernel helpers inside the library, such as cache state, dirty tracking, HMC/page-cache substitutes, wait/commit barriers, timers and work queues.
  • Shared helper files should use Nss* names, for example NssIoUring.c or NssRuntime.c; avoid new nwnss* helper file names.

If both policy selection and direct I/O are needed, the Userspace/Fuse boundary chooses the path and the IoUring companion performs only the io_uring-specific work. Original NSS files should keep only narrow callouts into these companions.

Current imported runtime extraction candidates are deliberately narrow and based on source comparison with nss.tar.bz2: hmc.c carries the page/slab/highmem and inode-pagecache compatibility shim; comnIO.c carries local kmap and copy-from-user helpers; zAPI.c carries uaccess/address-limit helpers; and comnCmdline.c carries a local si_meminfo helper. The current userspace side is routed through shared NssPageRuntime / NssUaccessRuntime helpers so later imports can reuse the same runtime boundary instead of adding more local shims. NSS-path guards and options use generic NSS_* names; do not add new MARS_NWE_NWNSS_* switches inside imported NSS code.

virtualIO is not the generic disk/backend layer. The audited NSS virtualIO.c / sharedsrc/virtualIO.c.h code is the _ADMIN/management virtual-file layer for XML command/result streams and virtual data streams. Its synthetic chunky-read block numbers are result-buffer adapters, not real storage blocks. Future FUSE mount support and io_uring storage access must be implemented behind separate role-specific boundaries, for example LSA/XAttr Userspace helpers, LSA/XAttr Fuse helpers, COMN/Beast IoUring helpers, cache Runtime helpers, or shared Nss* backend helpers.

The XAttr import provenance remains the local NSS/nss-common source drops. The public Novell SDK archives may be used only as documentation/reference. The current XAttr/LSA import now includes:

nss-common/shared/sdk/public/zXattr.h       -> include/nwnss/public/zXattr.h
nss-common/shared/sdk/include/extAttrBeast.h -> include/nwnss/include/extAttrBeast.h
nss/shared/sdk/include/lsa.h                -> include/nwnss/include/lsa.h
nss/public_core/lsa/lsaXattr.c              -> src/nwnss/lsa/lsaXattr.c
nss/public_core/lsa/lsaComn.c               -> src/nwnss/lsa/lsaComn.c
nss/public_core/lsa/lsaErr.c                -> src/nwnss/lsa/lsaErr.c
nss/public_core/lsa/lsaUser.c               -> src/nwnss/lsa/lsaUser.c
nss/public_core/lsa/lsaPrivate.h            -> include/nwnss/lsa/lsaPrivate.h
nss/public_core/lsa/lsaStartup.h            -> include/nwnss/lsa/lsaStartup.h
nss/public_core/comn/common/extAttrBeast.c  -> src/nwnss/comn/common/extAttrBeast.c
local userspace XAttr adapter               -> src/nwnss/lsa/lsaXattrUserspace.c

src/nwnss/lsa/lsaSuperXattr.c is a narrow extraction of original lsaSuper.c helper bodies required by the XAttr import (getMode, getUid, LSACtimeIsMetadataModTime). It is not a new semantic implementation and must stay aligned with the original source until the full VFS/superblock/provider boundary is intentionally imported or replaced by a reviewed backend boundary.

src/nwnss/lsa/lsaXattrUserspace.c and include/nwnss/internal/lsaXattrUserspace.h are the first reviewed userspace XAttr adapter boundary. They construct the minimal kernel-shaped super_block/inode/dentry/LsaInode_s context needed by original lsaXattr.c, strip an optional netware. prefix, and delegate to netware_getxattr, netware_setxattr and netware_removexattr. They are not FUSE or HostFS providers and must not grow storage policy. When NSS-volume identification exists, the NSS-volume versus OtherFS/HostFS routing decision belongs at this userspace boundary: NSS volumes use original NSS XAttr semantics, while non-NSS storage must use a separate backend or return a clear unsupported result until one exists.

The intended libnwnss boundary is reusable by future nwfs, nwnssmount, FUSE or io_uring providers: libnwnss owns NSS media layouts, metadata/trustee/quota semantics and original control flow; role-specific companions own host paths, xattr storage, sidecar migration, FUSE callback adaptation, registered files/buffers, runtime cache/workqueue semantics and asynchronous I/O execution. The XAttr/LSA provider is likely the first piece a future FUSE mount will call for listxattr, getxattr, setxattr, getattr and namespace metadata, but that future mount code belongs in *Fuse.c / *.h companions, not inside the imported original XAttr/LSA sources. Trustees are not a separate active xattr in this track: NSS carries them inside netware.metadata / zNW_metadata_s, so the OtherFS provider must not invent user.netware.trustees.

Namespace userspace uniqueness boundary

The COMN namespace imports are the NSS provider layer, not the Mars/NWFS compatibility wrapper. Future nwfs code may map Mars NAME_DOS, NAME_OS2, NAME_NFS and NAME_MAC to the imported NSS DOS, LONG, UNIX and MAC namespace families, and it should also account for DATASTREAM and EA namespace behavior. The existing partial nwfs namespace staging is ignored during this libnwnss audit/import phase and should be cleaned separately.

Most namespace functions are pure provider helpers and do not need a libnwnss userspace sidecar: compare, wildcard matching/replacement, ASCII/Unicode conversion, legal-name checks and component scanning can stay in the original NSS namespace files. *_generateUniqueName() is the exception because it requires directory collision lookup. The original files expect NamedBeast_s/NameSpace_s/NAME_FindZidForNameInDir(); HostFS, OtherFS, sidecar or Mars directory enumeration must not be added inline there.

If the userspace provider needs to support unique-name generation before a full NSS directory context exists, add a parallel boundary such as nameSpaceUserspace.c / nameSpaceUserspace.h. That boundary may ask a later nwfs wrapper or mount backend whether a candidate name already exists, while leaving dosNSpace.c, longNSpace.c, unixNSpace.c, macNSpace.c and nameSpace.c original-near.

Quota and salvage userspace ownership

Quota and salvage are covered by the same storage-backend rule. The imported NSS provider owns the semantics; a later nwfs layer owns Mars compatibility and HostFS/OtherFS policy. Current quota and salvage code under nwfs may be used to understand existing behavior, but it is not import provenance for libnwnss.

For quota, the relevant NSS/nss-common sources are shared/sdk/public/zXattr.h, public_core/lsa/lsaXattr.c, public_core/lsa/lsaComn.c, public_core/comn/common/dirQuotas.c, public_core/sharedsrc/manageUserSpaceRestr.c.h and the COMN create/write/rename/file-info call sites. Linux quotactl(), project-quota and metadata-only accounting are userspace/OtherFS enforcement policy and belong in parallel boundary files such as lsaQuotaUserspace.c or dirQuotasUserspace.c, not directly in original NSS imports.

For salvage, the relevant NSS sources include public_core/comn/common/name.c, beastDelete.c, comnRename.c, public_core/comn/authsys/zasAuthModel.c, public_core/zlss/purgeLog.c, salvageLog.c, purgeTree*.c and the salvage/purge FS hook definitions. OtherFS .recycle remains a payload repository, but .salvage JSON sidecars are legacy migration/debug state only. NetWare salvage validity and restore metadata should come from NSS-shaped xattrs or later imported NSS salvage metadata through a salvageUserspace.c style boundary.

Service/provider ownership boundary

The current import/audit direction assumes this long-term ownership split:

  • nwserv is the governor/control-plane supervisor. It starts and monitors processes such as nwconn, nwdirectory and later optional providers; it is not the NCP server and should not route normal decoded NCP payloads.
  • nwconn is the NCP server process. It owns client request parsing and reply packing, and calls libnwfs for file/volume work.
  • libnwfs is the Mars/NCP file compatibility wrapper. It maps Mars volume options, NCP wire layouts and HostFS/OtherFS state to libnwnss provider calls. It is not NSS provenance and is not the owner of future FUSE or io_uring backends.
  • libnwnss is the NSS provider. It owns NSS semantics for namespace, XAttr, quota, salvage and trustee-shaped metadata, plus future FUSE/io_uring and HostFS/OtherFS backend boundaries through explicit *Userspace.c companions.
  • nwnssmount is the future FUSE mount consumer of libnwnss; nwnssmu is the future TUI management utility for admin/inspect/repair/quota/salvage work.
  • libnwnds is the future NDS/eDirectory compatibility library. It should own DN, GUID, UserID, Security Equivalence Vector, tree/context and trustee identity mapping and call libnwdirectory. A separate nwnds process is optional later if shared state, caching, auth brokering, events or background jobs require a service.
  • nwdirectory is the LDAP/TinyLDAP-based directory server; libnwdirectory is its library/client layer.

NSS NDS headers such as eDir.h, ncpIDAPI.h and ndp_idbroker.h are boundary references for identity mapping only; they are not complete eDirectory backend provenance. Keep directory policy out of libnwnss and libnwfs and point it toward libnwnds/libnwdirectory.

NSS encp.h is a useful NCP layout reference for future Mars header convergence: namespace info, handle paths, trustees, quota and salvage scan/recover/purge layouts should be aligned to it over time. Mars code must still parse and build byte buffers safely; do not replace wire helpers with unchecked casts to imported NSS structs.

Port resolution workflow

For every PORT entry below, audit in this order:

  1. Search the full NSS and nss-common sources for an original .c provider.
  2. Search public_core/sharedsrc/*.c.h and original makefiles for wrapper patterns.
  3. If an original provider exists, replace or shrink the Mars port.
  4. If the provider is an external service not present in the shipped sources (for example NEB/nebus), keep a clearly named Mars port with a comment explaining the missing provenance and add/keep tests.
  5. If original files cannot be used for licensing reasons (for example the Novell Unicode TAB tables), keep a clearly marked replacement with tests. Generated NSS-compatible Unicode .TAB files from third_party/unicodeTables are classified as GENERATED PORT DATA because the Novell .TAB blobs have unsuitable/unknown standalone data licensing.
  6. Do not mark the file AUDITED until the provenance decision and test coverage are recorded here.
  7. Tests for Mars ports must be derived from the original header/IMP contract, observed Novell source call-sites, public Novell documentation, or an explicitly recorded Mars port policy. Do not keep tests that encode a convenience assumption discovered to be wrong during audit.
  8. External open-source implementations may be used as algorithmic comparison material only after their license/provenance is recorded. They are not Novell/NSS provenance and must not be copied into a Mars port unless that decision is explicitly documented with the required copyright/license text.

External Novell NDK reference scan

The following public Novell NDK drops were also checked as documentation/header references for the remaining Mars ports; they are not treated as importable NSS implementation provenance:

  • novell-clib-devel-2008.02.27-1netware_windows
  • novell-fs64-devel-2012.02.16-1.1.x86_64
  • novell-fs64-devel-2015.05.11-3.1.x86_64
  • novell-vfs-devel-2008.02.29-1windows
  • novell-vfs-devel-2015.02.06-1windows
  • novell-xattr-devel-2007.10.03-1linux
  • novell-xattr-devel-2015-02-06-1linux

Findings relevant to current ports:

  • The CLib NDK documents/prototypes standard libc functions such as strtol, atoi, memcmp, strlen, rand, srand, and ASCII ctype helpers, but does not provide LB_* NSS implementation sources. It supports keeping the libc-like Mars ports for those libNSS.imp exports when the NSS/sharedsrc tree has no provider.
  • FS64/XAttr/VFS SDKs provide public NSS/zAPI/XAttr/VFS/NEB headers and documentation. They confirm the public nebpub.h surface and future metadata/trustee/XAttr integration shape, but do not provide a system NEB provider implementation or replacement source for the private libNSS helper ports.
  • The XAttr SDK documents netware.metadata/netware.metadata2, trustee, quota and NSS file metadata layouts. These are future Mars-NWE/libnwnss integration references, not a reason to route current libc-like helpers through Mars core allocators or NCP code.

Per-patch audit rule

Future audit patches should include the source/header cleanup and the matching test changes in the same patch whenever behavior is affected. Each patch must update this checklist for the files it verifies. When auditing a .c or sharedsrc/*.c.h file, audit the directly associated public/internal/library headers in the same block whenever they define that file's ABI, macros or compile-time mapping. Header-only declarations that are not used yet should still stay original and remain listed, because later imports may rely on them.

1. Currently audited or partially audited focus areas

Status File / block Kind Test coverage Notes
AUDITED include/nwnss/include/nssOSAPIs.h ORIG+FIX/PORT nwnss.neb, nwnss.schedule Full diff against original shared/sdk/internal/nssOSAPIs.h checked in 0750. Original macro surface is kept; differences are include-path normalization, userspace LINUX_VERSION_CODE/KERNEL_VERSION fallback, guarding kernel regmodules.h, whitespace cleanup, and the final NSS_USERSPACE include of nssZosCompat.h so imported sources see the process-local NEB/ZOS/MPKNSS boundary without rewriting the original header body.
AUDITED include/nwnss/include/pssmpk.h PORT nwnss.pssmpk MPKNSS owner semantics checked/fixed in 0692.
AUDITED include/nwnss/include/schedule.h ORIG+FIX nwnss.schedule Userspace scheduler section scoped to NSS_USERSPACE; checked in 0691.
AUDITED include/nwnss/internal/nssZosCompat.h PORT nwnss.neb, nwnss.schedule Mars ZOS/NEB compat override header; rechecked in 0739/0740. It deliberately redirects imported ZOS scheduling/event/import/file macros to userspace boundary functions while keeping NSS business logic out of the compatibility header.
AUDITED include/nwnss/internal/spinlock.h PORT nwnss.spinlock Userspace spinlock port tested; checked in 0693.
AUDITED src/nwnss/comn/common/mgmt.c ORIG wrapper link smoke Wrapper checked in 0769: it intentionally matches the Novell sharedsrc wrapper pattern and only includes sharedsrc/mgmt.c.h; the shared management body is audited separately.
AUDITED src/nwnss/comn/common/ndp_comn.c ORIG wrapper link smoke Wrapper checked in 0769: it supplies the process-local NDP application globals required by the original userspace shared source and then includes sharedsrc/ndp_comn.c.h; no NDP common logic is implemented in the wrapper.
AUDITED src/nwnss/comn/common/ndp_guids.c ORIG wrapper link smoke Wrapper checked in 0769: it directly includes the original sharedsrc/ndp_guids.c.h GUID constants without extra logic.
AUDITED src/nwnss/comn/common/ndp_idbroker.c ORIG wrapper link smoke Wrapper checked in 0769: it exposes the minimal scheduler/queue/event/NDP globals and crypto prototypes needed by the original idbroker shared source, defines BUILD_NDP_IDBROKER, and does not replace idbroker logic.
AUDITED src/nwnss/comn/common/ndp_messagehandler.c ORIG wrapper link smoke Wrapper checked in 0769: it directly includes sharedsrc/ndp_messagehandler.c.h; all message-handler logic remains in the imported shared source.
TEMP src/nwnss/comn/comnModule.c TEMP link smoke Transition module identity bridge; should disappear later.
AUDITED src/nwnss/library/bit.c PORT nwnss.bit, nwnss.bitmap No original provider found beyond bit.h/libNSS.imp; native-NINT semantics fixed/tested in 0698.
AUDITED src/nwnss/library/que.c + src/nwnss/sharedsrc/que.c.h + include/nwnss/library/que.h ORIG wrapper + ORIG+FIX sharedsrc/header nwnss.que Wrapper matches Novell sharedsrc pattern; header and sharedsrc compared with original. Abweichungen sind Include-Pfad-Fixes, legacy callback casts and whitespace/diff-check cleanup only; STK/SQ/CIR/DQ/SET semantics tested in 0706.
AUDITED src/nwnss/library/qdiv.c ORIG+FIX nwnss.qdiv Compared with original public_core/library/qdiv.c; Knuth/Berkeley quad division implementation kept, with signed helper prototypes adjusted from QUAD to SQUAD because Mars QUAD is unsigned. Unsigned, signed, null-remainder and fuzz cases tested in 0707.
AUDITED src/nwnss/library/misc/rand.c PORT nwnss.rand, nwnss.namespace No original provider found beyond rand.h/libNSS.imp/callers; seed-deterministic PRNG port checked in 0700/0701/0718; also provides xStdlib.h rand/random/srand/srandom/initstate/setstate wrappers; libsodium only initializes default state before explicit seeding.
AUDITED src/nwnss/library/misc/rbpTree.c PORT nwnss.rbpTree No original provider found beyond rbpTree.h/libNSS.imp/callers; CLRS-style algorithmic port checked against header contract in 0703 and strengthened in 0705 with explicit red/black, parent-link, binary-search-order, black-height, and Coin3D-style insertion/deletion stress coverage. Coin3D rbptree.cpp was checked only as an external BSD-licensed CLRS comparison and was not imported.
AUDITED src/nwnss/library/os/currentTime.c PORT nwnss.utc No userspace original provider exists after checking public_core/library/utc and public_core/sharedsrc; public_core/nsslnxlib/nssLnxDummy.c has a kernel jiffies-oriented GetCurrentTime, while public_core/library/utc/gethres.386 documents the high-resolution timer unit as 100 microseconds. The userspace port keeps GetCurrentTime() on a monotonic centisecond/HZ=100 scale and now exposes GetHighResolutionTimer() on the documented 1/10000-second scale for checker/compression callers; covered by nwnss.utc.
AUDITED src/nwnss/library/os/delay.c ORIG+FIX/PORT nwnss.schedule, nwnss.snooze Scheduler functions kept as userspace functions, not macros; original ZOS_YieldThread/sleep/schedule lock-boundary behavior rechecked against nssOSAPIs.h. Userspace yield and zero-delay LB_delay(0) now drop/reacquire MPKNSS when owned so other threads can run without the global lock held; longer delay continues to map the kernel delay boundary to POSIX nanosleep.
AUDITED src/nwnss/library/os/nebEventPort.c PORT nwnss.neb Explicit NEB/nebus service port rechecked in 0740/0741 and against the FS64/XAttr public SDK headers. No original NEB provider implementation is part of the delivered NSS/NDK source set beyond neb.h/nebpub.h/nebmpk.h; this file remains a bounded, process-local userspace event-bus port and now covers the full public nebpub.h surface for link/test completeness. It is temporary boundary code, not a system-wide NEB replacement; a future cross-process event service belongs under explicit nwserv supervision.
AUDITED src/nwnss/library/os/pssmpk.c PORT nwnss.pssmpk pthread owner semantics checked/fixed in 0692.
AUDITED src/nwnss/library/stdlib/strtol.c + src/nwnss/library/stdlib/itoa.c + include/nwnss/library/xStdlib.h PORT + ORIG+FIX header nwnss.stdlib No LB_strtol/LB_itoa/LB_utoa original/sharedsrc implementation found after full NSS/nss-common search or the public Novell CLib NDK scan; libNSS.imp and xStdlib.h export the symbols. The NDK documents/prototypes normal strtol/atoi behavior only, so strtol-family conversions map to host libc, while itoa/utoa use a bounded caller-buffer integer formatter for bases 2..36; covered by nwnss.stdlib.
TEMP src/nwnss/nssStartupNameGlobals.c TEMP link smoke Transition globals from nssStartup.c; should disappear later.
AUDITED include/nwnss/internal/nssSourceCompat.h PRIVATE COMPAT build + nwnss.neb/schedule Private force-include compatibility layer rechecked in 0746. It preserves original MPKNSS release/reacquire boundaries around ZOS/event/module/file-backend calls, keeps NSS libc/source aliases private so public headers stay original, and does not invent cross-process NEB/module semantics or enable block I/O.
AUDITED src/nwnss/sharedsrc/mgmt.c.h ORIG+FIX link smoke, future management tests Compared with original public_core/sharedsrc/mgmt.c.h in 0769; management virtual-file/XML helper logic is kept. Userspace differences expose the Linux/NDP sections under NSS_USERSPACE, neutralize direct MPKNSS macro use inside the shared template so calls route through the audited userspace boundary, and keep include/whitespace cleanup only.
AUDITED src/nwnss/sharedsrc/ndp_idbroker.c.h ORIG+FIX/PORT boundary link smoke, future NDP tests Compared with original public_core/sharedsrc/ndp_idbroker.c.h in 0769. ID-broker XML/user/group/GUID mapping flow is kept; userspace differences avoid dynamic application-loader dlopen/ndp_app coupling in libnwnss, compile the kernel-style authenticated-ID paths under NSS_USERSPACE, and cast the pthread handler to the real void *(*)(void *) ABI.
AUDITED src/nwnss/utcUserland.c PORT nwnss.utc Userspace boundary for imported UTC helpers: exports the same timezone/daylight globals expected by utc.h plus GetUTCTime(), backed by libc time(3) and explicit UTC/default timezone state until the broader NSS clock configuration layer is imported. Original UTC conversion files are otherwise present under public_core/library/utc; no UTC sharedsrc implementation was found. Tests cover UTC round trips plus manual timezone-offset conversion.

2. Complete grouped file inventory

Every current file under src/nwnss and include/nwnss is listed here. Default TODO means the file still needs original-diff classification, even if it already compiles or has indirect test coverage.

Headers: root/generated compat

Status Kind Test coverage File Notes
AUDITED PORT nwnss.spinlock include/nwnss/internal/spinlock.h Userspace spinlock port tested; checked in 0693.
AUDITED ORIG+FIX nwnss.unicode, nwnss.utf8, nwnss.codepage include/nwnss/unicodeInit.h Compared with original public_core/library/unicodeInit.h; Unicode ABI/global declarations kept. Differences are include-path normalization to library/xUnicode.h and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.utc include/nwnss/utcData.h Compared with original public_core/library/utcData.h; UTC table declarations kept. Difference is include-path normalization to library/omni.h only.

Headers: nsslnxlib

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.unicode, nwnss.utf8, nwnss.codepage include/nwnss/nsslnxlib/nssunilib.h Compared with original public_core/nsslnxlib/nssunilib.h; public LibC Unicode prototypes kept. Userspace port adds required public/zOmni.h/size_t visibility and local LibC Unicode error/no-map constants used by the imported unicodeInit.c and userspace unilib.c; dry-run size arguments use size_t to match libc userspace allocation sizes.

Headers: comnSA

Status Kind Test coverage File Notes
AUDITED ORIG+FIX link smoke include/nwnss/comnSA/comnDataStream.h Compared with original shared/sdk/comnSA/comnDataStream.h; data-stream structures and prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.lock users include/nwnss/comnSA/comnLock.h Compared with original shared/sdk/comnSA/comnLock.h; lock API/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG link smoke include/nwnss/comnSA/contextHandle.h Byte-identical to original shared/sdk/comnSA/contextHandle.h.
AUDITED ORIG+FIX link smoke include/nwnss/comnSA/fileHandle.h Compared with original shared/sdk/comnSA/fileHandle.h; file-handle structures/prototypes kept. Differences are whitespace/diff-check cleanup plus the existing Linux version macro compatibility around connection-key fields.
AUDITED ORIG link smoke include/nwnss/comnSA/msgLock.h Byte-identical to original shared/sdk/comnSA/msgLock.h.
AUDITED ORIG+FIX nwnss.namespace include/nwnss/comnSA/name.h Compared with original shared/sdk/comnSA/name.h; name/namespace structures and prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/comnSA/pssConnection.h Compared with original shared/sdk/comnSA/pssConnection.h; PSS connection structures/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG link smoke include/nwnss/comnSA/psslib.h Byte-identical to original shared/sdk/comnSA/psslib.h.
AUDITED ORIG+FIX link smoke include/nwnss/comnSA/sAgentHandle.h Compared with original shared/sdk/comnSA/sAgentHandle.h; semantic-agent handle structures/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.namespace, link smoke include/nwnss/comnSA/sysimp.h Compared with original shared/sdk/comnSA/sysimp.h; import-pointer declarations kept. Userspace difference excludes DDS/NDPS import headers/functions and exposes the original LocaleTableStruct layout for namespace code without enabling kernel/DDS/VFS imports; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX link smoke include/nwnss/comnSA/zFriends.h Compared with original shared/sdk/comnSA/zFriends.h; friend prototypes kept. Differences are whitespace/diff-check cleanup only.

Headers: include

Status Kind Test coverage File Notes
AUDITED ORIG+FIX link smoke include/nwnss/include/DisplayVersion.h Compared with original shared/sdk/include/DisplayVersion.h; display-version ABI kept. Difference is include-path normalization to public/zOmni.h only.
AUDITED ORIG link smoke include/nwnss/include/adminVolume.h Byte-identical to original shared/sdk/internal/adminVolume.h; include inventory path differs but file content is unchanged.
AUDITED ORIG+FIX/PORT nwnss.alarm include/nwnss/include/alarm.h Compared with original shared/sdk/include/alarm.h; alarm structures/APIs kept. Userspace differences remove Linux kernel time include, normalize que.h, and add typed callback typedef/casts for modern compiler compatibility.
AUDITED ORIG+FIX nwnss.asyncio include/nwnss/include/asyncio.h Compared with original shared/sdk/include/asyncio.h; async I/O structures/macros kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/avolSimpleDir.h Compared with original public_core/comn/common/avolSimpleDir.h; simple _ADMIN dir prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cdcommon.h Compared with original public_core/comn/compression/cdcommon.h; compression statistics/descriptor layouts kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cdcomp.h Compared with original public_core/comn/compression/cdcomp.h; compression constants/prototypes kept. Differences are comment indentation, whitespace and diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cdnetwar.h Compared with original public_core/comn/compression/cdnetwar.h; NetWare compression I/O prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cdreada.h Compared with original public_core/comn/compression/cdreada.h; read-ahead state layout kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cduncomp.h Compared with original public_core/comn/compression/cduncomp.h; decompression constants/prototypes kept. Differences are comment indentation, whitespace and diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmActivity.h Compared with original public_core/comn/compression/cmActivity.h; compression activity/stream layouts kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmAlgoMan.h Compared with original shared/sdk/include/cmAlgoMan.h; algorithm-manager ABI kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmCompFile.h Compared with original shared/sdk/internal/cmCompFile.h; compressed-file layout structs kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmControl.h Compared with original shared/sdk/include/cmControl.h; compression control/statistics structs kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmNSS.h Compared with original shared/sdk/include/cmNSS.h; NSS compression public ABI kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX compression link smoke include/nwnss/include/cmRuntime.h Compared with original public_core/comn/compression/cmRuntime.h; compression runtime prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnAudit.h Compared with original public_core/comn/comnAudit.h; audit type/API surface kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnAuthorize.h Compared with original shared/sdk/include/comnAuthorize.h; authorize prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnBeastClass.h Compared with original shared/sdk/include/comnBeastClass.h; beast-class ABI kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnBeasts.h Compared with original shared/sdk/include/comnBeasts.h; beast layouts and prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnIO.h Compared with original shared/sdk/include/comnIO.h; COMN I/O prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.namespace include/nwnss/include/comnMacShortName.h Compared with original shared/sdk/include/comnMacShortName.h; Mac short-name API kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnParams.h Compared with original shared/sdk/include/comnParams.h; COMN parameter structs/macros kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT link smoke include/nwnss/include/comnPublics.h Compared with original shared/sdk/include/comnPublics.h; public COMN prototypes kept. Userspace difference exposes the Linux-kernel prototype sections when NSS_USERSPACE is set; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX nwnss.pssmpk, link smoke include/nwnss/include/comnTask.h Compared with original shared/sdk/include/comnTask.h; task/xaction prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.namespace include/nwnss/include/comnVariableData.h Compared with original shared/sdk/include/comnVariableData.h; root-variable-data prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/comnZAS.h Compared with original shared/sdk/include/comnZAS.h; ZAS rights cache layouts kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.control include/nwnss/include/control.h Compared with original shared/sdk/include/control.h; control ABI kept. Differences are include-path normalization to library/que.h, include/histogram.h, and include/alarm.h plus whitespace cleanup.
AUDITED ORIG+FIX link smoke include/nwnss/include/cro.h Compared with original public_core/comn/cro.h; CRO API kept. Difference is trailing whitespace/newline cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/csa.h Compared with original public_core/comn/csa.h; CSA prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/include/csaLease.h Compared with original public_core/comn/common/csaLease.h; CSA lease layout/API kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.stdlib include/nwnss/include/eDir.h Byte-identical to original shared/sdk/include/eDir.h.
AUDITED ORIG+FIX link smoke include/nwnss/include/eventSys.h Compared with original shared/sdk/include/eventSys.h; event IDs/layouts/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT link smoke include/nwnss/include/evs.h Compared with original shared/sdk/include/evs.h; encrypted-volume support layout kept. Userspace difference exposes the Linux-kernel structure block under NSS_USERSPACE; remaining changes are whitespace cleanup.
AUDITED ORIG link smoke include/nwnss/include/extAttrBeast.h Byte-identical to original shared/sdk/include/extAttrBeast.h.
AUDITED ORIG+FIX nwnss.fsm include/nwnss/include/fsm.h Compared with original shared/sdk/include/fsm.h; FSM macros/structures kept. Differences are include-path normalization, whitespace cleanup, and a narrow action cast for modern callback typing.
AUDITED ORIG link smoke include/nwnss/include/fsmsg.h Byte-identical to original shared/sdk/include/fsmsg.h.
AUDITED ORIG link smoke include/nwnss/include/fullDirectoryInfo.h Byte-identical to original shared/sdk/include/fullDirectoryInfo.h.
AUDITED ORIG+FIX/PORT nwnss.guid include/nwnss/include/guid.h Compared with original shared/sdk/include/guid.h; GUID ABI kept. Differences are include-path normalization plus userspace-visible GUID_getTime/GUID_init prototypes for the GUID sharedsrc port.
AUDITED ORIG+FIX link smoke include/nwnss/include/hardLinkBeast.h Compared with original shared/sdk/include/hardLinkBeast.h; hard-link beast prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT link smoke include/nwnss/include/histogram.h Compared with original shared/sdk/include/histogram.h; histogram command prototypes kept. Differences are include-path normalization, forward declaration of PCLSwitchDef_s instead of pulling parse/inlines headers, and whitespace/diff-check cleanup.
AUDITED ORIG+FIX/PORT nwnss.cache include/nwnss/include/hmc.h Compared with original shared/sdk/include/hmc.h; HMC structures kept. Differences are include-path normalization and replacing an unused msgGen.h include with the required library/que.h dependency for userspace compile.
AUDITED ORIG+FIX/PORT nwnss.id include/nwnss/include/id.h Compared with original shared/sdk/include/id.h; ID typedefs/constants kept. Differences are include-path normalization plus zINVALID_USERID alias to the existing invalid GUID value for userspace callers.
AUDITED ORIG+FIX nwnss.inst include/nwnss/include/inst.h Compared with original shared/sdk/include/inst.h; instance ABI kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX/PORT nwnss.latch include/nwnss/include/latch.h Compared with original shared/sdk/include/latch.h; latch/FSM latch APIs kept. Differences are include-path normalization, userspace RunningProcess mapping to scheduler ThreadId, and callback casts for modern compiler prototypes.
AUDITED ORIG+FIX/PORT link smoke include/nwnss/include/lsa.h Compared with original shared/sdk/include/lsa.h; LSA structures kept. Userspace difference stores struct inode * instead of a by-value kernel inode member under NSS_USERSPACE; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX nwnss.mailbox include/nwnss/include/mailbox.h Compared with original shared/sdk/include/mailbox.h; mailbox ABI kept. Difference is include-path normalization to library/omni.h only.
AUDITED ORIG nwnss.headers include/nwnss/include/maintenance.h Byte-identical to original shared/sdk/include/maintenance.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/mal.h Compared with original shared/sdk/include/mal.h; MAL ABI kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/include/manage.h Compared with original shared/sdk/include/manage.h; management structs/prototypes kept. Differences are include-path normalization, whitespace cleanup, and guarding MPKNSS macro fallbacks so real userspace locks are not overwritten.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/manageNlm.h Compared with original shared/sdk/include/manageNlm.h; management NLM ABI kept. Differences are include-path normalization for volume/XML/mgmt/mmpublic and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/msg.h Compared with original shared/sdk/include/msg.h; message-manager structures kept. Differences are include-path normalization only.
AUDITED ORIG+FIX nwnss.headers, nwnss.xerror include/nwnss/include/msgGen.h Compared with original shared/sdk/include/msgGen.h; GenMsg ABI kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/msgIO.h Compared with original shared/sdk/include/msgIO.h; message I/O flags and prototypes kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers, nwnss.namespace include/nwnss/include/name.h Compared with original shared/sdk/comnSA/name.h; Name cache/namespace ABI kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers, nwnss.namespace include/nwnss/include/nameScan.h Compared with original public_core/comn/nameScan.h; name-scan prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers, nwnss.namespace include/nwnss/include/nameSpace.h Compared with original shared/sdk/include/nameSpace.h; namespace scanner/registry layouts kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/include/ncpIDAPI.h Byte-identical to original shared/sdk/include/ncpIDAPI.h.
AUDITED PORT nwnss.headers include/nwnss/include/ndp_app.h Local userspace NDP application-context compatibility header. No delivered original ndp_app.h was found; it is kept minimal for the imported NDP shared sources and must not be treated as Novell provenance.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/include/ndp_comn.h Compared with original shared/sdk/include/ndp_comn.h; NDP common structs kept. Differences are include-path normalization plus userspace app-loader exclusions already required by the NDP sharedsrc wrappers.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/ndp_guids.h Compared with original shared/sdk/include/ndp_guids.h; NDP GUID APIs kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/ndp_idbroker.h Compared with original shared/sdk/include/ndp_idbroker.h; ID-broker APIs kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/ndp_messagehandler.h Compared with original shared/sdk/include/ndp_messagehandler.h; NDP message-handler APIs kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/ndp_msg.h Compared with original shared/sdk/include/ndp_msg.h; NDP message constants kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG link smoke include/nwnss/include/nebmpk.h Byte-identical to original shared/sdk/include/nebmpk.h; intentionally not included in nwnss.headers because it is the kernel NEB header and conflicts with nebpub.h in userspace.
AUDITED ORIG nwnss.headers include/nwnss/include/nebpub.h Byte-identical to original shared/sdk/public/nebpub.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/nssAdminLib.h Compared with original shared/sdk/include/nssAdminLib.h; admin library prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX generated nssErrorTable build include/nwnss/include/nssErrorTable.h Compared with original shared/sdk/include/nssErrorTable.h; complete header kept. Difference is trailing whitespace/newline cleanup only; now consumed by generated nssErrorTable.c.
AUDITED ORIG nwnss.headers include/nwnss/include/nssLog.h Byte-identical to original shared/sdk/include/nssLog.h.
AUDITED ORIG+FIX/PORT nwnss.neb, nwnss.schedule include/nwnss/include/nssOSAPIs.h Full diff against original shared/sdk/internal/nssOSAPIs.h checked in 0750. Macro body is original except for include-path normalization, userspace Linux-version fallback, kernel-only regmodules.h guard, whitespace cleanup, and a final NSS_USERSPACE hook to internal/nssZosCompat.h. This hook deliberately supplies process-local NEB/ZOS/MPKNSS userspace boundaries without hiding disk/block/VFS I/O or removing original macro declarations.
AUDITED ORIG link smoke include/nwnss/include/nssWinAPI.h Byte-identical to original shared/sdk/include/nssWinAPI.h; intentionally not included in nwnss.headers because it requires the Win32/NW input-key header set not imported for userspace.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/nwAlgo.h Compared with original public_core/comn/compression/nwAlgo.h; compression algorithm declarations kept. Differences are include-path normalization for lnxmb support headers and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/nwInProc.h Compared with original shared/sdk/internal/nwInProc.h; in-process structures kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/include/objectIDStore.h Byte-identical to original shared/sdk/internal/objectIDStore.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/opLock.h Compared with original shared/sdk/include/opLock.h; oplock constants/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/include/parse.h Compared with original shared/sdk/include/parse.h; parser ABI kept. Differences are include-path normalization plus userspace parser visibility needed by pcmdline.c.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/pssConfig.h Compared with original shared/sdk/internal/pssConfig.h; PSS config layout kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers, nwnss.pssdebug include/nwnss/include/pssDebug.h Compared with original shared/sdk/include/pssDebug.h; debug API kept. Differences are include-path normalization and whitespace cleanup only. Test covers production debug macros; DBG_DebugFormatBinary is declared by the original header but not exercised directly because it is not part of the exported libnwnss ABI.
AUDITED PORT nwnss.pssmpk include/nwnss/include/pssmpk.h MPKNSS owner semantics checked/fixed in 0692.
AUDITED ORIG nwnss.headers include/nwnss/include/purgeDir.h Byte-identical to original public_core/comn/purgeDir.h.
AUDITED ORIG+FIX nwnss.register include/nwnss/include/register.h Compared with original shared/sdk/include/register.h; registry API kept. Differences are include-path normalization only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/repair.h Compared with original shared/sdk/include/repair.h; repair prototypes kept. Differences are include-path normalization for lnxmb/user headers and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/repairRAVUser.h Compared with original shared/sdk/include/repairRAVUser.h; RAV user repair layout kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/repairUser.h Compared with original shared/sdk/include/repairUser.h; repair user layout kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/reserveResources.h Compared with original shared/sdk/include/reserveResources.h; reserve-resource prototypes kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/sazlib.h Compared with original public_core/comn/common/sazlib.h; semantic-agent helpers kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/sbsMFL.h Compared with original shared/sdk/internal/sbsMFL.h; SBS/MFL layout kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.schedule include/nwnss/include/schedule.h Userspace scheduler section scoped to NSS_USERSPACE; checked in 0691.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/searchMap.h Compared with original shared/sdk/include/searchMap.h; search-map API kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/include/seqUpdater.h Byte-identical to original public_core/comn/seqUpdater.h.
AUDITED ORIG+FIX nwnss.slab include/nwnss/include/slab.h Compared with original shared/sdk/include/slab.h; slab structures/APIs kept. Differences are include-path normalization only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/switchboard.h Compared with original shared/sdk/include/switchboard.h; switchboard function-pointer API kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/unixAuthSpace.h Compared with original public_core/comn/authsys/unixAuthSpace.h; Unix auth-space interface kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX/PORT nwnss.utc include/nwnss/include/utc.h Compared with original shared/sdk/include/utc.h; UTC ABI kept. Differences are include-path normalization, whitespace cleanup, and a userspace __linux__ branch exporting GetUTCTime()/timezone globals instead of kernel xtime/sys_tz.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/uxaction.h Compared with original shared/sdk/include/uxaction.h; user-xaction prototypes kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/virtualIO.h Compared with original shared/sdk/include/virtualIO.h; virtual I/O API kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers, nwnss.lbvolume include/nwnss/include/volume.h Compared with original shared/sdk/include/volume.h; volume structures/prototypes kept. Userspace difference exposes the Linux kernel structure block under NSS_USERSPACE; remaining changes are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX/PORT nwnss.wio include/nwnss/include/wio.h Compared with original shared/sdk/include/wio.h; WIO public prototypes kept. Userspace differences add libc/stdarg/xStdio visibility, avoid register/que UI runtime dependencies on Linux userspace, forward-declare screen handles, and map unsupported standard WIO streams to null.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/xAdminVolume.h Compared with original shared/sdk/include/xAdminVolume.h; admin-volume Unicode API kept. Difference is include-path normalization only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/xCache.h Compared with original shared/sdk/include/xCache.h; cache flags/API kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.xerror include/nwnss/include/xError.h Compared with original shared/sdk/include/xError.h; error constants kept. Differences are include-path normalization to public/zOmni.h/public/zError.h and whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/xMsg.h Compared with original shared/sdk/internal/xMsg.h; XLSS/CSA message layouts kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/zasAuthCache.h Compared with original public_core/comn/zasAuthCache.h; ZAS auth-cache API kept. Difference is include-path normalization only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/zasAuthModel.h Compared with original shared/sdk/internal/zasAuthModel.h; ZAS auth-model layout kept. Differences are include-path normalization and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/include/zasAuthSpace.h Compared with original public_core/comn/authsys/zasAuthSpace.h; ZAS auth-space API kept. Difference is include-path normalization only.

Headers: internal

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.headers include/nwnss/internal/adminVolume.h Compared with original shared/sdk/internal/adminVolume.h; AdminVolume layout/API kept. Differences are include-path normalization to library/xUnicode.h, library/que.h, include/volume.h, and include/xAdminVolume.h only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/internal/cacheControl.h Compared with original shared/sdk/internal/cacheControl.h; cache-control callback/API surface kept. Differences are include-path normalization to library/que.h, include/fsm.h, include/alarm.h, and explicit include/latch.h visibility for userspace compile.
AUDITED ORIG+FIX/PORT nwnss.headers, compression link smoke include/nwnss/internal/cmDefs.h Compared with original shared/sdk/internal/cmDefs.h; compression-management structs/macros kept. Userspace difference maps the kernel mpkapis.h dependency to imported include/schedule.h; remaining changes are include-path normalization to include/comnPublics.h, include/xError.h, library/que.h, include/utc.h and whitespace cleanup.
AUDITED ORIG+FIX compression link smoke include/nwnss/internal/comnCompress.h Compared with original shared/sdk/internal/comnCompress.h; compression persistent/runtime structures and prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/internal/dirQuotas.h Compared with original shared/sdk/internal/dirQuotas.h; directory-quota structs/API kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers, namespace link smoke include/nwnss/internal/macNSpace.h Compared with original shared/sdk/internal/macNSpace.h; Mac namespace constants/prototypes kept. Differences are include-path normalization to library/omni.h and whitespace/indentation cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers, nwnss.xml link smoke include/nwnss/internal/mgmt.h Compared with original shared/sdk/internal/mgmt.h; management-file/XML helper prototypes kept. Userspace difference exposes Linux management prototypes under zLINUX without requiring kernel-only declarations and adds forward declarations for Volume_s/Pool_s; remaining changes are include-path normalization to include/manage.h, internal/adminVolume.h, public/xmlNSS.h, and whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers, namespace link smoke include/nwnss/internal/msgName.h Compared with original shared/sdk/internal/msgName.h; name-message layout kept. Differences are include-path normalization to library/xUnicode.h, include/msgGen.h, include/nameSpace.h, include/hardLinkBeast.h, plus whitespace/diff-check cleanup.
AUDITED ORIG+FIX nwnss.headers, cache link smoke include/nwnss/internal/nCache.h Compared with original shared/sdk/internal/nCache.h; name-cache API kept. Difference is include-path normalization to include/xCache.h only.
AUDITED ORIG+FIX link smoke include/nwnss/internal/nssFSHooks.h Compared with original shared/sdk/internal/nssFSHooks.h; FS hook/event macro surface kept. Differences are include-path normalization to library/xUnicode.h and support/lnxmbINC/fshooks.h plus whitespace/diff-check cleanup. Not included in the standalone header test because the original header depends on broader ENCP namespace constants.
AUDITED PORT nwnss.neb, nwnss.schedule include/nwnss/internal/nssZosCompat.h Mars ZOS/NEB compat override header; rechecked in 0739/0740. It deliberately redirects imported ZOS scheduling/event/import/file macros to userspace boundary functions while keeping NSS business logic out of the compatibility header.
AUDITED ORIG link smoke include/nwnss/internal/objectIDStore.h Byte-identical to original shared/sdk/internal/objectIDStore.h.
AUDITED ORIG+FIX nwnss.headers, link smoke include/nwnss/internal/pssConfig.h Compared with original shared/sdk/internal/pssConfig.h; PSS config layout/defaults kept. Differences are include-path normalization to library/omni.h and include/hmc.h plus whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers, link smoke include/nwnss/internal/sbsMFL.h Compared with original shared/sdk/internal/sbsMFL.h; modified-file-list descriptors/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers, auth link smoke include/nwnss/internal/unixAuthModel.h Compared with original shared/sdk/internal/unixAuthModel.h; Unix auth model prototypes kept. Differences are include-path normalization to library/omni.h, include/latch.h, include/comnBeasts.h, and include/comnAuthorize.h only.
AUDITED ORIG+FIX nwnss.headers, namespace link smoke include/nwnss/internal/unixNSpace.h Compared with original shared/sdk/internal/unixNSpace.h; Unix namespace layout/prototypes kept. Differences are include-path normalization to library/omni.h and whitespace/indentation cleanup only.

Headers: library

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.bit include/nwnss/library/bit.h Compared with original; only include path / Watcom inline guard adjustments.
AUDITED ORIG+FIX nwnss.bit, nwnss.bitmap include/nwnss/library/bitmap.h Compared with original shared/sdk/library/bitmap.h; complete header kept. Differences are include-path normalization to public/zOmni.h and trailing whitespace cleanup only. Covered by bitmap allocation, set/clear, bounded ranges, first-run allocation, failure, and disjoint-run tests.
AUDITED ORIG+FIX nwnss.crc include/nwnss/library/crc.h Compared with original shared/sdk/library/crc.h; only include-path normalization to public/zOmni.h. Covered by byte CRC, running update, string/lowercase, length-limited lowercase, and Unicode CRC helper tests.
AUDITED ORIG+FIX nwnss.xctype include/nwnss/library/ctype.h Compared with original shared/sdk/library/ctype.h; only Linux userspace libc include fix (include_next <ctype.h>) so the NSS header does not recursively shadow the host header.
AUDITED ORIG+FIX nwnss.format include/nwnss/library/format.h Compared with original shared/sdk/library/format.h; declarations kept unchanged, differences are whitespace/indentation cleanup only.
AUDITED ORIG+FIX link smoke include/nwnss/library/hash.h Compared with original shared/sdk/library/hash.h; only include-path normalization to public/zOmni.h and library/crc.h.
AUDITED ORIG+FIX link smoke include/nwnss/library/inlines.h Compared with original shared/sdk/library/inlines.h; complete inline declaration set kept. Differences are include-path normalization to library/xUnicode.h/public/zOmni.h and whitespace cleanup.
AUDITED ORIG+FIX nwnss.snooze, nwnss.schedule include/nwnss/library/intlatch.h Compared with original public_core/library/intlatch.h; only include-path normalization to include/latch.h.
AUDITED ORIG link smoke include/nwnss/library/nssDebug.h Byte-identical to original shared/sdk/library/nssDebug.h.
AUDITED ORIG+FIX broad nwnss build include/nwnss/library/omni.h Compared with original shared/sdk/library/omni.h; complete platform/type macro body kept. Differences are include-path normalization to public/zOmni.h/library/size_t.h and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.que include/nwnss/library/que.h Compared with original shared/sdk/library/que.h; complete header kept. Differences are include path normalization (<library/omni.h>) and whitespace-only cleanup; extensive header-documented STK/SQ/CIR/DQ/SET contracts tested in 0706.
AUDITED ORIG nwnss.rand include/nwnss/library/rand.h Byte-identical to shared/sdk/library/rand.h; audited with rand.c in 0700.
AUDITED ORIG header nwnss.rbpTree include/nwnss/library/rbpTree.h Byte-identical to original shared/sdk/library/rbpTree.h; complete header kept. Header itself cites CLRS/Sedgewick and defines the RBP parent-pointer contract.
AUDITED ORIG broad nwnss build include/nwnss/library/size_t.h Byte-identical to original shared/sdk/library/size_t.h; kept because NSS headers include it through normalized paths.
AUDITED ORIG+FIX nwnss.stdlib, nwnss.zalloc include/nwnss/library/stdlib.h Compared with original shared/sdk/library/stdlib.h; complete wrapper header kept. Differences are include-path normalization to library/xStdlib.h and a narrow userspace shadowing fix so Mars builds use the NSS wrapper path instead of recursively including the host stdlib.h.
AUDITED ORIG+FIX nwnss.xstring include/nwnss/library/string.h Compared with original; MARS userspace include_next/strings.h branch only.
AUDITED ORIG nwnss.xctype include/nwnss/library/xCtype.h Byte-identical to original.
AUDITED ORIG broad nwnss build include/nwnss/library/xLimits.h Byte-identical to original shared/sdk/library/xLimits.h.
AUDITED ORIG+FIX nwnss.stdio include/nwnss/library/xStdio.h Compared with original shared/sdk/library/xStdio.h; complete header kept. Only include-path normalization remains (<size_t.h> -> <library/size_t.h>).
AUDITED ORIG+FIX nwnss.stdlib, nwnss.rand, nwnss.zalloc include/nwnss/library/xStdlib.h Compared with original shared/sdk/library/xStdlib.h; only include-path normalization remains. RAND_MAX and the original public prototype set are kept unchanged. Private source aliases such as zalloc -> LB_zalloc / zrealloc -> LB_zrealloc live in nssSourceCompat.h, not this original header.
AUDITED ORIG+FIX nwnss.xstring include/nwnss/library/xString.h Compared with original; include path / whitespace-only adjustments.
AUDITED ORIG+FIX nwnss.unicode, nwnss.utf8, nwnss.codepage include/nwnss/library/xUnicode.h Compared with original shared/sdk/library/xUnicode.h; complete Unicode ABI kept. Differences are include-path normalization, whitespace cleanup, and narrow NSS_UNICODE visibility for internal table/case-conversion declarations needed by imported userspace Unicode sources.

Headers: public

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/chunk.h Compared with original shared/sdk/public/chunk.h; complete chunk layout kept. Difference is include-path normalization to public/zOmni.h only.
AUDITED ORIG nwnss.headers include/nwnss/public/efldefs.h Byte-identical to original shared/sdk/public/efldefs.h.
AUDITED ORIG+FIX/PORT nwnss.neb, nwnss.headers include/nwnss/public/neb.h Compared with original shared/sdk/public/neb.h; NEB constants/API kept. Userspace difference defines NEB_STATUS as LONG when the kernel NEB headers are not available; remaining changes are whitespace cleanup.
AUDITED ORIG nwnss.headers include/nwnss/public/nebpub.h Byte-identical to original shared/sdk/public/nebpub.h.
AUDITED ORIG nwnss.headers include/nwnss/public/nfsAPIs.h Byte-identical to original shared/sdk/public/nfsAPIs.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/nfsLock.h Compared with original shared/sdk/public/nfsLock.h; NFS lock structures/prototypes kept. Differences are include-path normalization to library/omni.h plus whitespace/diff-check cleanup.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/public/nssPubs.h Compared with original shared/sdk/public/nssPubs.h; NSS public API surface kept. Userspace difference exposes the Linux-kernel visibility-entry block for imported callers under NSS_USERSPACE; remaining changes are whitespace cleanup.
AUDITED ORIG nwnss.xml, nwnss.headers include/nwnss/public/xmlNSS.h Byte-identical to original shared/sdk/public/xmlNSS.h.
AUDITED ORIG+FIX nwnss_xml_tags_java generation include/nwnss/public/xmlTags.h Compared with original shared/sdk/public/xmlTags.h; complete tag define set kept. Difference is trailing whitespace cleanup only; also feeds imported buildXmlTagJava.prl generator target.
AUDITED ORIG+FIX generated nssErrorTable build include/nwnss/public/zError.h Compared with original shared/sdk/public/zError.h; only whitespace/alignment cleanup. This remains the generator input for buildErrorTranslation.prl.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zEvent.h Compared with original shared/sdk/public/zEvent.h; event tag definitions/prototypes kept. Differences are include-path normalization to public/zParams.h and whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zFsMsg.h Compared with original shared/sdk/public/zFsMsg.h; file-message public structures kept. Differences are include-path normalization to public/zOmni.h, public/zMsg.h, and public/chunk.h plus whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zMigrate.h Compared with original shared/sdk/public/zMigrate.h; migration API kept. Difference is include-path normalization to public/zOmni.h only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zMsg.h Compared with original shared/sdk/public/zMsg.h; system/user message layouts kept. Differences are include-path normalization to public/zOmni.h and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zOmni.h Compared with original shared/sdk/public/zOmni.h; base NSS type/constant definitions kept. Differences are include-path normalization to public/zWhere.h and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zParams.h Compared with original shared/sdk/public/zParams.h; volume/attribute constants and parameter structs kept. Differences are include-path normalization to public/zOmni.h plus whitespace/diff-check cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zPool.h Compared with original shared/sdk/public/zPool.h; pool public structures/prototypes kept. Difference is include-path normalization to public/zPublics.h plus trailing whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/public/zPublics.h Compared with original shared/sdk/public/zPublics.h; public z* prototypes kept. Differences are include-path normalization to public/zOmni.h/public/zParams.h plus whitespace cleanup.
AUDITED ORIG nwnss.headers include/nwnss/public/zWhere.h Byte-identical to original shared/sdk/public/zWhere.h.

Headers: support/lnxmbINC

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/aesproc.h Original shared/support/lnxmbINC/aesproc.h is an empty placeholder; imported file remains an empty newline-only placeholder.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/alert.h Compared with original shared/support/lnxmbINC/alert.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/bindery.h Compared with original shared/support/lnxmbINC/bindery.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/support/lnxmbINC/bits.h Byte-identical to original shared/support/lnxmbINC/bits.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/command.h Original shared/support/lnxmbINC/command.h is an empty placeholder; imported file remains an empty newline-only placeholder.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/config.h Compared with original shared/support/lnxmbINC/config.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/connect.h Compared with original shared/support/lnxmbINC/connect.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/connexp.h Compared with original shared/support/lnxmbINC/connexp.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/enable.h Compared with original shared/support/lnxmbINC/enable.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/encp.h Compared with original shared/support/lnxmbINC/encp.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/errors.h Compared with original shared/support/lnxmbINC/errors.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/event.h Compared with original shared/support/lnxmbINC/event.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/fshooks.h Compared with original shared/support/lnxmbINC/fshooks.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/fsproto.h Compared with original shared/support/lnxmbINC/fsproto.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/ins.h Compared with original shared/support/lnxmbINC/ins.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/lanconf.h Original shared/support/lnxmbINC/lanconf.h is an empty placeholder; imported file remains an empty newline-only placeholder.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/lfsproto.h Compared with original shared/support/lnxmbINC/lfsproto.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/loader.h Compared with original shared/support/lnxmbINC/loader.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/support/lnxmbINC/locks.h Byte-identical to original shared/support/lnxmbINC/locks.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/maapi.h Compared with original shared/support/lnxmbINC/maapi.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/manss.h Compared with original shared/support/lnxmbINC/manss.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/masv.h Compared with original shared/support/lnxmbINC/masv.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/support/lnxmbINC/mmpublic.h Compared with original shared/support/lnxmbINC/mmpublic.h; Object-manager definitions kept; only include-path normalization to library/omni.h plus whitespace cleanup.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/modify.h Compared with original shared/support/lnxmbINC/modify.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/mpktypes.h Compared with original shared/support/lnxmbINC/mpktypes.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/support/lnxmbINC/nameserv.h Byte-identical to original shared/support/lnxmbINC/nameserv.h.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/nmevents.h Original shared/support/lnxmbINC/nmevents.h is an empty placeholder; imported file remains an empty newline-only placeholder.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/nspace.h Compared with original shared/support/lnxmbINC/nspace.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/portable.h Compared with original shared/support/lnxmbINC/portable.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/support/lnxmbINC/procdefs.h Compared with original shared/support/lnxmbINC/procdefs.h; Userspace wrapper replaces the kernel linuxmpk.h/scheduler/procedure surface with the imported NSS base types required by userspace COMN imports; this is a deliberate kernel-boundary port, not an original header copy.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/scs.h Original shared/support/lnxmbINC/scs.h is an empty placeholder; imported file remains an empty newline-only placeholder.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/setparms.h Compared with original shared/support/lnxmbINC/setparms.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/lnxmbINC/subjects.h Compared with original shared/support/lnxmbINC/subjects.h; definitions/prototypes kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.headers include/nwnss/support/lnxmbINC/version.h Byte-identical to original shared/support/lnxmbINC/version.h.
AUDITED ORIG+FIX/PORT nwnss.headers include/nwnss/support/lnxmbINC/volstruc.h Compared with original shared/support/lnxmbINC/volstruc.h; Original volume structures/constants kept; userspace guard prevents VOLUME_* macro collisions with imported NSS public volume constants.

Headers: support/ndssdkINC_kern

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/ndssdkINC_kern/dconst.h Compared with original shared/support/ndssdkINC_kern/dconst.h; constants kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/ndssdkINC_kern/dtypes.h Compared with original shared/support/ndssdkINC_kern/dtypes.h; type definitions kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.headers include/nwnss/support/ndssdkINC_kern/nwdserr.h Compared with original shared/support/ndssdkINC_kern/nwdserr.h; error definitions kept. Differences are whitespace/diff-check cleanup only.

Sources: root/transition

Status Kind Test coverage File Notes
AUDITED PORT BUILD GLUE build + nwnss.* src/nwnss/CMakeLists.txt Mars build-system file, not an imported Novell NSS source. Audited as build glue: it declares the nwnss library, imported source/header layout, userspace compile definitions, generated nssConfig.h for Unicode table search paths, local dependency links such as libsodium, and test-only support without changing NSS business semantics. Original provenance for individual files remains recorded on their own audit rows.
TEMP TEMP link smoke src/nwnss/nssStartupNameGlobals.c Transition globals from nssStartup.c; should disappear later.
AUDITED PORT build + nwnss.neb/schedule include/nwnss/internal/nssSourceCompat.h Private force-include compatibility layer for imported NSS sources that do not see the full kernel nssOSAPIs.h macro environment. Rechecked after the scheduler/NEB audit: NSS libc aliases, printk/kfree/module-export no-ops, symbol-import fallbacks and z* file-backend fallbacks are deliberate userspace boundaries. ZOS calls that may enter the OS/event/module/file backend now preserve the original MPKNSS release/reacquire boundary when the caller owns the lock; they do not invent cross-process NEB/module semantics or enable real block I/O.
AUDITED PORT nwnss.utc src/nwnss/utcUserland.c Userspace boundary for imported UTC helpers: exports the same timezone/daylight globals expected by utc.h plus GetUTCTime(), backed by libc time(3) and explicit UTC/default timezone state until the broader NSS clock configuration layer is imported. Original UTC conversion files are otherwise present under public_core/library/utc; no UTC sharedsrc implementation was found. Tests cover UTC round trips plus manual timezone-offset conversion.

Sources: COMN root

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.aes include/nwnss/comn/aes.h Compared with original public_core/comn/aes.h; OpenSSL-derived AES ABI and key layout kept. Userspace difference adds fixed-width u32/u16/u8 typedef visibility under NSS_USERSPACE instead of relying on Linux kernel types. The original header also declares ECB/CFB/OFB/CTR helpers, but the delivered NSS AES source set only provides key setup, block encrypt/decrypt, and CBC; no current nwnss caller uses the undeclared-at-link helper surface.
AUDITED ORIG header nwnss.headers include/nwnss/comn/checker.h Byte-identical to original public_core/comn/checker.h in the current tree; no userspace semantic changes found.
AUDITED ORIG+FIX header nwnss.headers include/nwnss/comn/comnCmdline.h Compared with original public_core/comn/comnCmdline.h; command-line helper declarations are kept. Differences are only include-path normalization from <omni.h> to <library/omni.h> plus whitespace cleanup; no userspace semantic changes found.
TEMP TEMP link smoke src/nwnss/comn/comnModule.c Transition module identity bridge; should disappear later.
AUDITED ORIG+FIX nwnss.version src/nwnss/comn/comnVersion.c Compared with original public_core/comn/comnVersion.c; CMN_VersionInfo initializer is original. Only whitespace cleanup from VersionInformation_s CMN_VersionInfo = spacing; build macros ZMAJV/ZMINV/ZSUBV/ZBLDN are supplied by CMake as in the original makefile context.
AUDITED ORIG header nwnss.headers include/nwnss/comn/nameScan.h Compared with original public_core/comn/nameScan.h; name-scan ABI is unchanged. The only difference is whitespace cleanup in a comment; no userspace semantic changes found.
AUDITED ORIG+FIX header nwnss.headers include/nwnss/comn/pssStartup.h Compared with original public_core/comn/pssStartup.h; startup globals and prototypes are kept. Differences are include-path normalization to <library/omni.h> and <include/msgGen.h> plus whitespace cleanup around Module; no userspace semantic changes found.

Sources: COMN AES

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.aes src/nwnss/comn/aes/aes_cbc.c Compared with original public_core/comn/aes/aes_cbc.c; AES-CBC logic is unchanged. Userspace difference only avoids the kernel-only linux/types.h include when NSS_USERSPACE is set; remaining changes are whitespace cleanup. Tested against the NIST SP 800-38A AES-128-CBC vector plus decrypt/IV update behavior.
AUDITED ORIG+FIX/PORT nwnss.aes src/nwnss/comn/aes/aes_core.c Compared with original public_core/comn/aes/aes_core.c; AES key schedule, encrypt and decrypt tables/logic are unchanged. Userspace difference only removes linux/module.h/linux/types.h from the userspace build while keeping <stdlib.h>; remaining changes are whitespace cleanup. Tested against the FIPS-197 AES-128 ECB known-answer vector and invalid-key argument paths.
AUDITED ORIG header nwnss.aes include/nwnss/comn/aes/aes_locl.h Compared with original public_core/comn/aes/aes_locl.h; local AES helper macros kept, with only whitespace cleanup.

Sources: COMN authsys

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT link smoke, future rights tests src/nwnss/comn/authsys/authorize.c Compared with original public_core/comn/authsys/authorize.c; authorization model/space registration, GUID/ID cache, alarm and ZAS glue logic are kept. Userspace difference is limited to restoring the NSS STATIC marker after the imported NetWare bindery.h macro collision; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX link smoke, future rights tests src/nwnss/comn/authsys/unixAuthModel.c Compared with original public_core/comn/authsys/unixAuthModel.c; Unix auth-beast construction/destruction, read/write/validate, modify-info and model ops table are unchanged. Differences are whitespace cleanup only.
AUDITED ORIG+FIX link smoke, future rights tests src/nwnss/comn/authsys/unixAuthSpace.c Compared with original public_core/comn/authsys/unixAuthSpace.c; Unix and Unix-to-NetWare chown/chmod/stat auth-space operations are unchanged. Differences are whitespace cleanup only.
AUDITED ORIG+FIX link smoke, future rights tests src/nwnss/comn/authsys/unixDecision.c Compared with original public_core/comn/authsys/unixDecision.c; Unix permission/effective-rights decision logic is unchanged. Differences are whitespace cleanup only.
AUDITED ORIG link smoke, future rights tests src/nwnss/comn/authsys/zasAuthCache.c Compared with original public_core/comn/authsys/zasAuthCache.c; no file-level diff. ZAS auth-cache logic is the original source.
AUDITED ORIG+FIX/PORT link smoke, future rights tests src/nwnss/comn/authsys/zasAuthModel.c Compared with original public_core/comn/authsys/zasAuthModel.c; ZAS auth-beast/trustee/visibility/effective-rights model logic is kept. Userspace/modern-compiler difference is the WORK_Schedule callback cast for ZAS_FixVisibilityThread; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX/PORT link smoke, future rights tests src/nwnss/comn/authsys/zasAuthSpace.c Compared with original public_core/comn/authsys/zasAuthSpace.c; ZAS trustee/inherited-rights/auth-space logic and NEB/audit event paths are kept. Userspace difference restores STATIC after the imported NetWare bindery.h macro collision; remaining changes are whitespace cleanup/alignment.
AUDITED ORIG+FIX link smoke, future rights tests src/nwnss/comn/authsys/zasDecision.c Compared with original public_core/comn/authsys/zasDecision.c; ZAS visibility/effective-rights/supervisor/access decision logic is unchanged. Differences are whitespace cleanup only.

Sources: COMN common

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT link smoke, future adminvol tests src/nwnss/comn/common/adminVolume.c Compared with original public_core/comn/common/adminVolume.c; AdminVolume construction, directory table, startup/shutdown, _ADMIN beast insertion and management-volume control flow are kept. Userspace/modern-compiler differences are typed callback casts for agent/asyncio/storage/FSM callbacks plus whitespace cleanup; no AdminVolume behavior is replaced by an in-memory shortcut.
AUDITED ORIG+FIX link smoke, future adminvol tests src/nwnss/comn/common/avolSimpleDir.c Compared with original public_core/comn/common/avolSimpleDir.c; persistent AdminVolume simple-directory/name-message logic is unchanged. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX link smoke src/nwnss/comn/common/beastClass.c Compared with original public_core/comn/common/beastClass.c; Beast-class registration, inheritance, operation-table and lifecycle logic are kept. Userspace difference is only dropping the kernel-only linux/module.h include; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX header nwnss.headers, link smoke include/nwnss/comn/common/beastClass.h Compared with original public_core/comn/common/beastClass.h; Beast-class ABI/prototypes are kept. Difference is include-path normalization from comnBeasts.h to the imported include/comnBeasts.h path.
AUDITED ORIG+FIX/PORT link smoke, future beast tests src/nwnss/comn/common/beastDelete.c Compared with original public_core/comn/common/beastDelete.c; beast delete/truncate/purge control flow is kept. Userspace difference replaces the kernel-only linux/module.h include with the local instrumentation/compat header required by the current import; remaining changes are whitespace cleanup. Real storage/block side effects remain behind the imported COMN/virtual-I/O boundaries rather than being faked here.
AUDITED ORIG+FIX link smoke, future beast tests src/nwnss/comn/common/beastHash.c Compared with original public_core/comn/common/beastHash.c; Beast hash/new/free/release semantics are unchanged. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT link smoke, future beast tests src/nwnss/comn/common/beastIO.c Compared with original public_core/comn/common/beastIO.c; Beast pack/unpack, flush, toss, mark-xlocal and storage-info flow are kept. Userspace difference removes the kernel-only linux/module.h include; remaining changes are whitespace cleanup. Disk/block/VFS effects are not enabled by this file outside the existing COMN/virtual-I/O boundaries.
AUDITED ORIG link smoke src/nwnss/comn/common/beastRelease.c Compared with original public_core/comn/common/beastRelease.c; no file-level differences found, so release/unlatch logic is the imported original source.
AUDITED ORIG+FIX header nwnss.headers, link smoke include/nwnss/comn/common/beastStartup.h Compared with original public_core/comn/common/beastStartup.h; Beast startup declarations are kept. Difference is include-path normalization from comnBeasts.h to the imported include/comnBeasts.h path.
AUDITED ORIG+FIX/PORT link smoke, future CSA tests src/nwnss/comn/common/cSA.c Compared with original public_core/comn/common/cSA.c; CSA message dispatch, storage-info, search-map cleanup and volume-stat scheduling logic are kept. Userspace differences are the Msg_s QUAD pointer/status carrier casts, the local SetErrnoFromStatus bridge, integer zeroes where the original assigned NULL to scalar door/owner/callback fields, and modern WORK_Schedule callback casts.
AUDITED ORIG+FIX/PORT link smoke, future CSA tests src/nwnss/comn/common/cSAcache.c Compared with original public_core/comn/common/cSAcache.c; CSA cache lookup/message construction is kept. Userspace difference is limited to storing the Unicode name pointer in the Msg_s QUAD carrier via uintptr_t, plus the required <stdint.h> include.
AUDITED ORIG+FIX link smoke, future CSA tests src/nwnss/comn/common/cSAmanager.c Compared with original public_core/comn/common/cSAmanager.c; CSA manager startup/shutdown/cleanup logic is kept. Only modern-compiler callback casting for MSG_BreakSetOfDoors differs from the original source.
AUDITED ORIG nwnss.aes, link smoke src/nwnss/comn/common/checker.c Compared with original public_core/comn/common/checker.c; no file-level differences found, so checker control logic is the imported original source.
AUDITED ORIG+FIX link smoke src/nwnss/comn/common/cmdLineRecovery.c Compared with original public_core/comn/common/cmdLineRecovery.c; command-line recovery logic is kept. Difference is adding the imported library/omni.h visibility required by the userspace build; remaining changes are whitespace/diff-check cleanup.
AUDITED ORIG+FIX/PORT link smoke, future audit tests src/nwnss/comn/common/comnAudit.c Compared with original public_core/comn/common/comnAudit.c; COMN audit control flow is kept. Userspace difference avoids kernel-only version checks/includes when NSS_USERSPACE is set and uses libc stdio visibility instead; no external audit/vigil provider is invented here.
AUDITED ORIG link smoke, future data-stream tests src/nwnss/comn/common/comnDataStream.c Compared with original public_core/comn/common/comnDataStream.c; no file-level differences found, so data-stream helper logic is the imported original source.
AUDITED ORIG+FIX link smoke, future EFL tests src/nwnss/comn/common/comnEFL.c Compared with original public_core/comn/common/comnEFL.c; epoch/EFL checker logic is kept. Difference is only the modern WORK_Schedule callback cast for checkIdleEpochs.
AUDITED ORIG+FIX link smoke, future event tests src/nwnss/comn/common/comnEvent.c Compared with original public_core/comn/common/comnEvent.c; event registration/report logic is kept. Differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT link smoke, future file tests src/nwnss/comn/common/comnFile.c Compared with original public_core/comn/common/comnFile.c; COMN file create/open/close/rename/link/map/info control flow is kept. Userspace differences are the Msg_s QUAD pointer/status carrier casts, a local SetErrnoFromStatus bridge, no-op igrab/iput wrappers for the imported struct inode * boundary, and typed callback casts for legacy close/event paths; no real kernel inode lifetime or block-I/O backend is enabled here.
AUDITED ORIG+FIX/PORT link smoke, future COMN IO tests src/nwnss/comn/common/comnIO.c Compared with original public_core/comn/common/comnIO.c; asynchronous/direct read-write, file-block/hole, chunk-cache, compression and snapshot-copy control flow is kept. Userspace/modern-compiler differences remove kernel-only highmem/uaccess includes, add the local SetStatusFromErrno Msg_s QUAD carrier bridge, cast legacy WORK_Schedule, async completion and chunk-release callbacks to their real signatures, and route pointer payloads through uintptr_t. No real kernel highmem/user-copy or block-I/O backend is enabled here.
AUDITED ORIG+FIX link smoke, nwnss.version, nwnss.namespace src/nwnss/comn/common/comnLib.c Compared with original public_core/comn/common/comnLib.c; version-info, name cleanup and COMN helper logic is kept. Differences are include-path/visibility fixes for the imported DisplayVersion.h path, removal of the unused local nssRegistration.h include in the userspace build, and whitespace cleanup.
AUDITED ORIG+FIX link smoke, future byte-range lock tests src/nwnss/comn/common/comnLock.c Compared with original public_core/comn/common/comnLock.c; lock-set creation, byte-range conflict handling, callback/reply scheduling and unlock control flow is kept. Differences are modern-compiler casts for old K&R voidfunc_t/boolfunc_t callback slots, including the real SA callback and lock-data compare signatures, plus whitespace cleanup.
AUDITED ORIG+FIX link smoke src/nwnss/comn/common/comnLog.c Compared with original public_core/comn/common/comnLog.c; logging helper logic is kept. Userspace difference removes kernel-only linux/module.h/nssOSAPIs.h dependencies that are not needed for the imported userspace logger; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX link smoke, future lookup tests src/nwnss/comn/common/comnLookup.c Compared with original public_core/comn/common/comnLookup.c; namespace lookup, AdminVolume handling, hardlink resolution, Mac short-name fallback and latch/release flow are kept. Differences are whitespace/indentation cleanup only; no lookup shortcut or fake AdminVolume path is introduced.
AUDITED ORIG+FIX nwnss.namespace src/nwnss/comn/common/comnMacShortName.c Compared with original public_core/comn/common/comnMacShortName.c; Mac short-name mangling logic is unchanged. Differences are whitespace cleanup plus the userspace-safe *uPtr = 0 terminator fix where the original assigned NULL to integer unicode_t; the function remains backed by imported NSS Unicode/name helpers and the LB_strtol port.
AUDITED ORIG+FIX/PORT link smoke src/nwnss/comn/common/comnOpLock.c Compared with original public_core/comn/common/comnOpLock.c; oplock state-machine and break/wait/timeout logic are kept. The NetWare alert declarations, data and ZOS_NetWareAlert call remain visible in the source and are excluded only by the existing Linux/userspace guard, rather than being deleted. Other userspace differences expose imported schedule/snooze prototypes locally and cast the legacy three-argument opCallback before calls so modern prototypes match the real callback ABI.
AUDITED ORIG+FIX link smoke src/nwnss/comn/common/comnPool.c Compared with original public_core/comn/common/comnPool.c; pool active-lock, alert work and modify-info logic are kept. Differences are modern-compiler casts for fillInWork/WORK_Schedule callbacks and a precise cast for the parent BST_modifyInfo operation before invoking the legacy function pointer.
AUDITED ORIG+FIX link smoke, future rename tests src/nwnss/comn/common/comnRename.c Compared with original public_core/comn/common/comnRename.c; rename/salvage control flow, quota checks, FSHooks/NEB event production, hard-link and namespace rename handling are kept. Differences are limited to adding the imported inst.h visibility required by the current userspace build plus whitespace/indentation cleanup; no rename shortcut or fake AdminVolume/Beast path is introduced.
AUDITED ORIG+FIX link smoke, future startup tests src/nwnss/comn/common/comnStartup.c Compared with original public_core/comn/common/comnStartup.c; COMN startup/shutdown, FSHook public-record lookup, version and XML/report helpers are kept. Differences are whitespace/diff-check cleanup only in the current import; no startup global is replaced by a shortcut here.
AUDITED ORIG+FIX/PORT link smoke, nwnss.schedule/work src/nwnss/comn/common/comnTask.c Compared with original public_core/comn/common/comnTask.c; master/task/user-transaction registration, lookup, cleanup and MSG/object-cache integration are kept. Userspace/modern-compiler differences remove the kernel-only linux/module.h include and cast the legacy object-cache initializer callbacks (initTask, initUserXaction, initHomeXaction) to voidfunc_t; remaining changes are whitespace cleanup. The underlying scheduling/MPKNSS boundary is provided by the audited userspace OS layer rather than being hidden in this file.
AUDITED ORIG+FIX nwnss.unicode, nwnss.namespace src/nwnss/comn/common/comnUnicode.c Compared with original public_core/comn/common/comnUnicode.c; COMN_NameToUnicode, COMN_UnicodeToName, COMN_UnicodeToLPName and COMN_LPNameToUnicode logic is unchanged. The only source change is dropping the kernel-only linux/module.h include for the userspace build; conversion behavior is covered through nwnss.unicode/nwnss.namespace and the generated unitable loader.
AUDITED ORIG+FIX nwnss.namespace src/nwnss/comn/common/comnVariableData.c Compared with original public_core/comn/common/comnVariableData.c; root variable-data registry, pack/unpack/free/XML dispatch logic is unchanged. Mars keeps whitespace cleanup and the intentional bounds fix from 0572 (rvdType >= RVD_MAX_ELEMENTS) so the array-length constant is rejected instead of indexing one element past RVD_functions; invalid, valid and duplicate registration paths plus pack/free behavior are covered by nwnss.namespace.
AUDITED ORIG+FIX link smoke, future volume tests src/nwnss/comn/common/comnVol.c Compared with original public_core/comn/common/comnVol.c; volume event definitions, setup/cleanup, alert work scheduling, active-list lookup/iteration and volume accounting helpers are kept. Differences are whitespace cleanup plus a modern WORK_Schedule cast for the alert work routine; no volume-active shortcut or fake pool/volume state is introduced.
AUDITED ORIG+FIX link smoke, future wildcard tests src/nwnss/comn/common/comnWild.c Compared with original public_core/comn/common/comnWild.c; wildcard/read/restart control flow is unchanged in the current import. No userspace compatibility shim, storage shortcut or namespace behavior change was found beyond the import path itself.
AUDITED ORIG+FIX link smoke, future xaction tests src/nwnss/comn/common/comnXaction.c Compared with original public_core/comn/common/comnXaction.c; begin/end XLocal, force-write and xaction latch/control flow are unchanged in the current import. This confirms the earlier temporary xlocal bridge was replaced by the real original file rather than a synthetic base split.
AUDITED ORIG+FIX link smoke, future handle tests src/nwnss/comn/common/contextHandle.c Compared with original public_core/comn/common/contextHandle.c; context-handle lookup, resolve, release and message integration logic is unchanged in the current import. No userspace-specific shortcut was introduced.
AUDITED ORIG+FIX/PORT link smoke, future CRO tests src/nwnss/comn/common/cro.c Compared with original public_core/comn/common/cro.c; child/reference-object message and lease control flow is kept. Userspace difference is limited to stdint.h visibility plus the local SetErrnoFromStatus bridge because Msg_s.sys.where is carried as a QUAD in the imported userspace message ABI.
AUDITED ORIG+FIX/PORT link smoke src/nwnss/comn/common/csaLease.c Compared with original public_core/comn/common/csaLease.c; CSA lease-list logic is kept. Userspace differences drop linux/module.h, normalize local includes to imported headers, add stdint.h, and cast msg->sys.data[0].start through uintptr_t before treating the QUAD transport field as an XLSSBeastLeaseList_s *.
AUDITED ORIG+FIX link smoke, future dirquota behavior tests src/nwnss/comn/common/dirQuotas.c Compared with original public_core/comn/common/dirQuotas.c; directory-quota accounting and scheduling logic are kept. Userspace differences drop linux/module.h and cast WORK_Schedule callbacks/arguments for modern function-pointer prototypes; remaining changes are whitespace cleanup.
AUDITED ORIG+FIX link smoke, future EFL tests src/nwnss/comn/common/eflMgmt.c Compared with original public_core/comn/common/eflMgmt.c; encrypted-file-list management logic is unchanged in the current import. No userspace-specific code or behavior shortcut was found.
AUDITED ORIG+FIX/PORT link smoke, future file-handle tests src/nwnss/comn/common/fileHandle.c Compared with original public_core/comn/common/fileHandle.c; file-handle creation, rights/conflict accounting, close/delete/truncate cleanup, migrated/virtual/internal-EA handle paths and per-connection/task cleanup flow are kept. Userspace differences are the Msg_s.sys.where QUAD status bridge, stdint.h visibility, typed MSG_DestroySetOfKeys match callback casts and whitespace/indentation cleanup. The imported code still routes storage, compression, LSA, CSA and Beast effects through the real COMN backends/boundaries rather than replacing file-handle semantics with a shortcut.
AUDITED ORIG+FIX/PORT link smoke, future fsmsg tests src/nwnss/comn/common/fsmsg.c Compared with original public_core/comn/common/fsmsg.c; NSS message method tables, file-handle dispatch, migrated/virtual demigrate routing, trustee/effective-rights/zid entry points and status propagation flow are kept. Userspace/modern-compiler differences remove the kernel-only linux/kernel.h, add stdint.h, route pointer payloads and Msg_s.sys.where through uintptr_t/QUAD carriers, replace old K&R externs with typed prototypes where imported headers now expose real signatures, and cast legacy method-table callbacks via statusfunc_t. No fsmsg operation is stubbed or short-circuited here.
AUDITED ORIG+FIX link smoke, future hardlink tests src/nwnss/comn/common/hardLinkBeast.c Compared with original public_core/comn/common/hardLinkBeast.c; hard-link beast handling is unchanged in the current import. No userspace-specific code or fake hardlink path was found.
AUDITED ORIG+FIX / KERNEL-BOUNDARY nwnss.cache, link smoke src/nwnss/comn/common/hmc.c Compared against public_core/comn/common/hmc.c; high-memory metadata cache policy, page-buffer queues, cache-type validation, copy-to/from-himem flow and startup/shutdown logic remain the original Linux NSS source. The userspace-only shim replaces kernel slab/page/highmem/inode calls with page-sized heap carriers and returns no host page-cache pages, while keeping the original x86_64 policy that rejects Linux/private HMC modes. No kernel page cache, block I/O or inode lifetime backend is enabled in libnwnss.
AUDITED ORIG wrapper link smoke src/nwnss/comn/common/mgmt.c Wrapper checked in 0769: it intentionally matches the Novell sharedsrc wrapper pattern and only includes sharedsrc/mgmt.c.h; the shared management body is audited separately.
AUDITED ORIG+FIX XML/management link smoke src/nwnss/comn/common/mgmtFiles.c Compared with original public_core/comn/common/mgmtFiles.c; management XML file read/generator tables and cache/stat readers are kept. Differences are include-path normalization for imported local headers, relative compression includes flattened to the userspace layout, and whitespace/diff-check cleanup only.
AUDITED ORIG+FIX XML/management link smoke src/nwnss/comn/common/mgmtPool.c Compared with original public_core/comn/common/mgmtPool.c; pool XML read/write dispatch and pool-info/volume reporting flow are kept. Userspace/compiler difference is limited to explicit statusfunc_t casts for legacy management callback table slots plus whitespace cleanup.
AUDITED ORIG+FIX XML/management link smoke src/nwnss/comn/common/mgmtVol.c Compared with original public_core/comn/common/mgmtVol.c; volume XML control/read/write dispatch, EFL/SBS hooks, user/dir/trustee information and quota/stat paths are retained. Userspace/compiler fixes are a local adminVolume.h visibility include and typed statusfunc_t casts for old callback tables; remaining changes are whitespace/indentation cleanup.
AUDITED ORIG+FIX nwnss.namespace, link smoke src/nwnss/comn/common/name.c Compared with original public_core/comn/common/name.c; name insert/delete/mangle/rename/salvage and EFL update flow is unchanged. No userspace shortcut or fake namespace path was found; differences are whitespace/diff-check cleanup only.
AUDITED ORIG nwnss.namespace, link smoke src/nwnss/comn/common/nameCache.c Compared with original public_core/comn/common/nameCache.c; no file-level semantic differences were found. Name cache lookup/update/invalidate flow is original.
AUDITED ORIG+FIX nwnss.namespace, link smoke src/nwnss/comn/common/nameLookup.c Compared with original public_core/comn/common/nameLookup.c; lookup/path-separator handling and namespace lookup flow are kept. Differences are whitespace/diagnostic cleanup only; no lookup shortcut or AdminVolume bypass was found.
AUDITED ORIG+FIX nwnss.namespace, link smoke src/nwnss/comn/common/nameScan.c Compared with original public_core/comn/common/nameScan.c; path/name-scan, pathname work-buffer and namespace-scan control flow are retained. Userspace difference removes the kernel-only procdefs.h include; remaining changes are whitespace/comment cleanup.
AUDITED ORIG wrapper link smoke src/nwnss/comn/common/ndp_comn.c Wrapper checked in 0769: it supplies the process-local NDP application globals required by the original userspace shared source and then includes sharedsrc/ndp_comn.c.h; no NDP common logic is implemented in the wrapper.
AUDITED ORIG wrapper link smoke src/nwnss/comn/common/ndp_guids.c Wrapper checked in 0769: it directly includes the original sharedsrc/ndp_guids.c.h GUID constants without extra logic.
AUDITED ORIG wrapper link smoke src/nwnss/comn/common/ndp_idbroker.c Wrapper checked in 0769: it exposes the minimal scheduler/queue/event/NDP globals and crypto prototypes needed by the original idbroker shared source, defines BUILD_NDP_IDBROKER, and does not replace idbroker logic.
AUDITED ORIG wrapper link smoke src/nwnss/comn/common/ndp_messagehandler.c Wrapper checked in 0769: it directly includes sharedsrc/ndp_messagehandler.c.h; all message-handler logic remains in the imported shared source.
AUDITED ORIG+FIX/PORT link smoke, future ObjectID tests src/nwnss/comn/common/objectIDStore.c Compared with original public_core/comn/common/objectIDStore.c; ObjectID cache/store event flow, volume GUID export, delayed work and enable-object-info paths are kept. Userspace/modern-compiler differences are typed WORK_Schedule callback casts plus whitespace cleanup.
AUDITED ORIG link smoke, future PSS tests src/nwnss/comn/common/pssConnection.c Compared with original public_core/comn/common/pssConnection.c; no semantic file-level differences found. PSS connection lookup/resolve/master cleanup and SAgent/context/file-handle integration remain original.
AUDITED ORIG nwnss.register src/nwnss/comn/common/registerLSS.c Compared with original public_core/comn/common/registerLSS.c; no semantic file-level differences found. LSS feature register/get/unregister and duplicate-register behavior remain original and are covered by nwnss.register.
AUDITED ORIG+FIX/PORT link smoke, future repair tests src/nwnss/comn/common/repair.c Compared with original public_core/comn/common/repair.c; repair/verify data structures and control flow remain visible. Userspace difference is an explicit boundary shim for kernel/NLM ZOS thread, consumer and work scheduling macros so the code compiles without starting real kernel repair workers or hidden event providers.
AUDITED ORIG link smoke, future SAgent tests src/nwnss/comn/common/sAgentHandle.c Compared with original public_core/comn/common/sAgentHandle.c; no semantic file-level differences found. Semantic-agent handle initialization, lookup, resolve, release and cleanup flow remain original.
AUDITED ORIG+FIX/PORT nwnss.namespace src/nwnss/comn/common/sazLib.c Compared with original public_core/comn/common/sazLib.c; semantic-agent message helper logic is kept. Userspace difference is stdint.h plus casting the Msg_s.sys.data[PATTERN_DATA].start QUAD carrier through uintptr_t before treating it as a pointer.
AUDITED ORIG link smoke, future search-map tests src/nwnss/comn/common/searchMap.c Compared with original public_core/comn/common/searchMap.c; no semantic file-level differences found. Search-map allocation, cleanup and iteration behavior remain original.
AUDITED ORIG link smoke, future sequence-update tests src/nwnss/comn/common/seqUpdater.c Compared with original public_core/comn/common/seqUpdater.c; no semantic file-level differences found. Sequence-update helpers remain original.
AUDITED ORIG+FIX/PORT link smoke, future xaction tests src/nwnss/comn/common/uxaction.c Compared with original public_core/comn/common/uxaction.c; user-xaction control flow and message/status handling are kept. Userspace differences provide libc aprintf visibility, preserve ZOS consumer register/unregister lock-boundaries, and carry Msg_s.sys.where through the userspace QUAD pointer/status bridge.
AUDITED ORIG wrapper link smoke, future virtual-IO tests src/nwnss/comn/common/virtualIO.c Wrapper checked against the original include pattern: it compiles the real shared source through src/nwnss/sharedsrc/virtualIO.c.h, matching the imported sharedsrc layout. Full sharedsrc body is audited separately.
AUDITED ORIG+FIX link smoke, future volume-startup tests src/nwnss/comn/common/volStartup.c Compared with original public_core/comn/common/volStartup.c; volume startup/shutdown iteration and hooks are kept. Difference is a typed SET_APPLY callback cast for modern compiler compatibility plus whitespace cleanup.
AUDITED ORIG+FIX/PORT link smoke, future zAPI tests src/nwnss/comn/common/zAPI.c Compared with original public_core/comn/common/zAPI.c; public zAPI dispatch and data conversion flow are kept. Userspace differences replace kernel uaccess/address-limit helpers with local copy shims, add no-op mpkEnter/mpkExit only outside kernel context, and route function/pointer payloads through uintptr_t/QUAD carriers; no real kernel user-copy or block-I/O backend is enabled.
AUDITED ORIG+FIX link smoke, future zPool tests src/nwnss/comn/common/zPool.c Compared with original public_core/comn/common/zPool.c; pool flush/timeout and file-info logic are kept. Differences are typed WORK_Schedule callback casts for timeout/flush workers plus whitespace cleanup.

Sources: COMN compression

Status Kind Test coverage File Notes
AUDITED ORIG+FIX link smoke, future compression tests src/nwnss/comn/compression/cdcomp.c Compared with original public_core/comn/compression/cdcomp.c; compressor tree building and data-encode flow are kept. Userspace difference is limited to making schedule.h/CYieldUntilIdle visible for the imported source; no algorithmic compression shortcut is introduced.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cdcompa.c Compared with original public_core/comn/compression/cdcompa.c; no semantic file-level difference found.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cduncomp.c Compared with original public_core/comn/compression/cduncomp.c; no semantic file-level difference found.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cduncompa.c Compared with original public_core/comn/compression/cduncompa.c; no semantic file-level difference found.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cmActivity.c Compared with original public_core/comn/compression/cmActivity.c; no semantic file-level difference found.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cmAlgoMan.c Compared with original public_core/comn/compression/cmAlgoMan.c; no semantic file-level difference found.
AUDITED ORIG+FIX link smoke, future compression tests src/nwnss/comn/compression/cmBgCompress.c Compared with original public_core/comn/compression/cmBgCompress.c; background-compression scheduling state is kept. Difference is limited to typed WORK_Schedule callback casts for modern compilers plus whitespace cleanup.
AUDITED ORIG+FIX/PORT link smoke, future compression tests src/nwnss/comn/compression/cmCompDecomp.c Compared with original public_core/comn/compression/cmCompDecomp.c; compression/decompression thread setup and dispatch flow are kept. Userspace difference removes nssOSAPIs.h and maps ZOS_StartThreadWithModuleHandle to an explicit no-thread boundary so the code links without spawning hidden kernel/NLM compression workers.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cmCompFile.c Compared with original public_core/comn/compression/cmCompFile.c; no semantic file-level difference found.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/cmControl.c Compared with original public_core/comn/compression/cmControl.c; no semantic file-level difference found.
AUDITED ORIG+FIX link smoke, future compression tests src/nwnss/comn/compression/cmRuntime.c Compared with original public_core/comn/compression/cmRuntime.c; activity/runtime state machine is kept. Difference is limited to typed WORK_Schedule callback casts for compression/decompression activity work.
AUDITED ORIG+FIX/PORT link smoke, future compression tests src/nwnss/comn/compression/comnCompress.c Compared with original public_core/comn/compression/comnCompress.c; compressed-beast info/modify, background compression and compressor control flow are kept. Userspace differences make hidden compression worker startup an explicit no-thread boundary, map destroy-thread to a harmless success result, and add typed XML/COMN-operation callback casts; no compression algorithm or storage shortcut is introduced.
AUDITED ORIG link smoke, future compression tests src/nwnss/comn/compression/nwAlgo.c Compared with original public_core/comn/compression/nwAlgo.c; no semantic file-level difference found.

Sources: COMN main

Status Kind Test coverage File Notes
AUDITED ORIG header link smoke, future audit tests include/nwnss/comn/main/comnAudit.h Compared with original public_core/comn/comnAudit.h; COMN audit event declarations and constants are kept. No semantic header difference found beyond trailing whitespace cleanup.
AUDITED ORIG+FIX/PORT link smoke, future cmdline tests src/nwnss/comn/main/comnCmdline.c Compared with original public_core/comn/main/comnCmdline.c; NSS command-line/control handlers, XML/status helpers, volume/pool/compression/trustee command dispatch and management wiring are kept. Userspace difference is limited to a local si_meminfo shim backed by sysinfo(2)/sysconf(_SC_PAGESIZE) so the original Linux page-count expectation remains true outside the kernel, plus required libc headers and whitespace cleanup. No command path is stubbed or replaced.
AUDITED ORIG header link smoke include/nwnss/comn/main/seqUpdater.h Compared with original public_core/comn/seqUpdater.h; no file-level difference found. Sequence-updater ABI is kept as imported.

Sources: COMN namespace

Status Kind Test coverage File Notes
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/dataStreamNSpace.c Compared with original public_core/comn/namespace/dataStreamNSpace.c; no semantic file-level difference found. Data-stream namespace startup/registry surface is kept.
AUDITED ORIG+FIX header nwnss.namespace include/nwnss/comn/namespace/dataStreamNSpace.h Compared with original public_core/comn/namespace/dataStreamNSpace.h; namespace constants/prototypes kept. Difference is only include-path normalization from <omni.h> to <library/omni.h>.
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/dosNSWild.c Compared with original public_core/comn/namespace/dosNSWild.c; no semantic file-level difference found. DOS wildcard matching/control flow is kept.
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/dosNSpace.c Compared with original public_core/comn/namespace/dosNSpace.c; no semantic file-level difference found. DOS namespace startup and lookup/mangle hooks are kept.
AUDITED ORIG+FIX header nwnss.namespace include/nwnss/comn/namespace/dosNSpace.h Compared with original public_core/comn/namespace/dosNSpace.h; DOS namespace ABI kept. Difference is only include-path normalization from <omni.h> to <library/omni.h>.
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/extAttrNSpace.c Compared with original public_core/comn/namespace/extAttrNSpace.c; no semantic file-level difference found. Extended-attribute namespace registration and callbacks are kept.
AUDITED ORIG+FIX header nwnss.namespace include/nwnss/comn/namespace/extAttrNSpace.h Compared with original public_core/comn/namespace/extAttrNSpace.h; EA namespace ABI kept. Difference is only include-path normalization from <omni.h> to <library/omni.h>.
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/longNSpace.c Compared with original public_core/comn/namespace/longNSpace.c; no semantic file-level difference found. Long-name namespace startup and callback surface are kept.
AUDITED ORIG+FIX header nwnss.namespace include/nwnss/comn/namespace/longNSpace.h Compared with original public_core/comn/namespace/longNSpace.h; long namespace ABI kept. Difference is only include-path normalization from <omni.h> to <library/omni.h>.
AUDITED ORIG+FIX nwnss.namespace src/nwnss/comn/namespace/macNSpace.c Compared with original public_core/comn/namespace/macNSpace.c; Mac namespace startup/callback flow is kept. Userspace difference only removes the kernel-only linux/module.h include; remaining changes are whitespace cleanup.
AUDITED ORIG nwnss.namespace src/nwnss/comn/namespace/nameSpace.c Compared with original public_core/comn/namespace/nameSpace.c; no semantic file-level difference found. Namespace registry/startup/shutdown, ID lookup and registration flow are kept with no AdminVolume or namespace shortcut.
AUDITED ORIG+FIX header nwnss.namespace include/nwnss/comn/namespace/nspaceStartup.h Compared with original public_core/comn/namespace/nspaceStartup.h; namespace startup declarations kept. Difference is only include-path normalization from <omni.h> to <library/omni.h>.
AUDITED ORIG+FIX nwnss.namespace src/nwnss/comn/namespace/unixNSpace.c Compared with original public_core/comn/namespace/unixNSpace.c; Unix namespace startup/callback flow is kept. Userspace difference only removes the kernel-only linux/module.h include; remaining changes are whitespace cleanup.

Sources: COMN SBS

Status Kind Test coverage File Notes
AUDITED ORIG+FIX link smoke, future SBS tests src/nwnss/comn/sbs/sbsMFL.c Compared with original public_core/comn/sbs/sbsMFL.c; modified-file-list mark/unmark, verification, enumeration and volume/ZID/name lookup flow are kept. Userspace/modern-compiler difference is limited to typed WORK_Schedule callback casts for the asynchronous mark/unmark work items plus whitespace cleanup.
AUDITED ORIG+FIX link smoke, future SBS tests src/nwnss/comn/sbs/sbsMgmt.c Compared with original public_core/comn/sbs/sbsMgmt.c; modified-file-list XML control, cookie state, enumerate/status/repair/verify dispatch and result streaming are kept. Differences are whitespace/diff-check cleanup only; no SBS management operation is shortcut.

Buildtools: generated NSS support

Status Kind Test coverage File Notes
AUDITED ORIG buildtool generated nssErrorTable build src/nwnss/buildtools/Makefile.nssErrorTable Byte-for-byte original import from nss-common/buildtools; retained as provenance for the generated error-table flow even though CMake drives generation.
AUDITED ORIG buildtool generated nssErrorTable build src/nwnss/buildtools/buildErrorTranslation.prl Byte-for-byte original import from nss-common/buildtools; CMake invokes it to generate nssErrorTable.c from include/nwnss/public/zError.h.
AUDITED ORIG buildtool nwnss_xml_tags_java generation src/nwnss/buildtools/buildXmlTagJava.prl Byte-for-byte original import from nss-common/buildtools; CMake exposes nwnss_xml_tags_java to generate NSSXmlTags.java from include/nwnss/public/xmlTags.h even though Java output is not currently compiled.

Sources: library root

Status Kind Test coverage File Notes
AUDITED PORT nwnss.bit, nwnss.bitmap src/nwnss/library/bit.c No original provider found beyond bit.h/libNSS.imp; native-NINT semantics fixed/tested in 0698.
AUDITED ORIG+FIX nwnss.functionptrs src/nwnss/library/functionPtrs.c Compared with original public_core/library/functionPtrs.c; differences limited to removing Linux kernel module.h/EXPORT_SYMBOL usage and include-path normalization. Exported LSA function pointer globals are checked for default NULL state, assignability and callback dispatch.
AUDITED ORIG+FIX nwnss.qdiv src/nwnss/library/qdiv.c Compared with original public_core/library/qdiv.c; differences limited to the existing signed SQUAD helper prototype fix/comment and whitespace normalization. Tests cover unsigned division/modulo, small-dividend path, null-remainder path, signed division/modulo and deterministic fuzz cases.
AUDITED ORIG wrapper nwnss.que src/nwnss/library/que.c Wrapper translation unit for original sharedsrc que.c.h; matches Novell sharedsrc-wrapper pattern.
AUDITED PORT nwnss.xctype src/nwnss/library/xCtype.c No original provider found beyond xCtype.h/libNSS.imp after NSS/sharedsrc search; Novell CLib NDK documents the matching ASCII ctype/toupper/tolower contract but provides no LB_* NSS implementation source. ASCII table/toupper/tolower semantics tested in 0698.
AUDITED PORT/ORIG+FIX nwnss.xstring src/nwnss/library/xString.c Rechecked after GUID/scheduler audit and the public Novell CLib NDK. LB_stricmp uses original public_core/sharedsrc/stricmp.c.h; no original provider was found for the remaining libc-like libNSS.imp helpers after checking public_core/sharedsrc, public_core/library, and the CLib NDK headers/docs. The NDK only confirms standard memcmp/strlen semantics, so the userspace port keeps host libc semantics for byte/string helpers and exports legacy LB_memcmp/LB_strlen from libNSS.imp even though their prototypes remain commented in the original header. ABI and comparison/length behavior are covered by nwnss.xstring.

Sources: library/debug

Status Kind Test coverage File Notes
AUDITED ORIG wrapper link smoke src/nwnss/library/debug/otherErrorTables.c Restored to the original Novell wrapper shape: single #include <otherErrorTables.c.h>. The generated/base table flow is handled by imported buildtools and generated nssErrorTable.c.
AUDITED ORIG+FIX nwnss.pssdebug src/nwnss/library/debug/pssDebug.c Compared with original public_core/library/debug/pssDebug.c; debug logic kept. Differences are UNIX/userspace include handling, include-path normalization, disabled WIO dependency in userspace, and whitespace. This remains a debug/console boundary only; no NSS runtime decisions depend on the host console port. Test covers production debug macros; DBG_DebugFormatBinary is declared by the original header but not exercised directly because it is not part of the exported libnwnss ABI.

Sources: library/eDir

Status Kind Test coverage File Notes
AUDITED ORIG wrapper nwnss.stdlib src/nwnss/library/eDir/parseDSObjectName.c Wrapper for original sharedsrc parseDSObjectName.c.h; wrapper comment plus sharedsrc/ include path only. Dot/NDS and root-left slash forms covered by nwnss.stdlib.

Sources: library/fsm

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.fsm src/nwnss/library/fsm/fsmnw.c Compared with original public_core/library/fsm/fsmnw.c; ready-queue/mailbox logic kept. Userspace port disables kernel worker threads (NUM_FSM_THREADS=0) and initializes a local interrupt mailbox; tests cover startup/shutdown, delayed ready-queue execution, FIFO draining, empty drain behavior, and mailbox release without asserting debug-only initializer side effects in release builds. Other changes are include-path fixes and callback casts.

Sources: library/guid

Status Kind Test coverage File Notes
AUDITED ORIG wrapper nwnss.guid src/nwnss/library/guid/guid.c Wrapper for original sharedsrc guid.c.h; only procdefs include and local sharedsrc include path. Sharedsrc carries the userspace entropy/time fixes.

Sources: library/id

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.id src/nwnss/library/id/id.c Compared with original public_core/library/id/id.c; ID allocation logic kept. Differences are Linux kernel include removal, include-path normalization, xStdlib include, and whitespace.

Sources: library/latch

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.latch src/nwnss/library/latch/intlatch.c Compared with original public_core/library/latch/intlatch.c; latch wait logic kept. Tests cover internal init, exclusive latch, and release on the non-waiting path. Differences are include-path normalization and trailing whitespace.
AUDITED ORIG+FIX nwnss.latch src/nwnss/library/latch/latch.c Compared with original public_core/library/latch/latch.c; debug/latch body kept. Tests cover shared/exclusive init, shared count transitions, up/down conversion, conditional latch/unlatch, no-wait exclusive acquisition, and final free-state invariants. Differences are include-path normalization, kernel header removal for userspace build, and whitespace cleanup.

Sources: library/misc

Status Kind Test coverage File Notes
AUDITED ORIG wrapper link smoke src/nwnss/library/misc/dbginit.c Wrapper for original sharedsrc dbginit.c.h; wrapper replaces local copy with sharedsrc include path. Shared debug-init implementation remains in src/nwnss/sharedsrc/dbginit.c.h.
AUDITED ORIG+FIX nwnss.register src/nwnss/library/misc/displayVersion.c Compared with original public_core/library/misc/displayVersion.c; formatting body kept. Differences are include-path/userspace pssmpk include fixes and whitespace.
AUDITED ORIG+FIX nwnss.format src/nwnss/library/misc/format.c Compared with original public_core/library/misc/format.c; numeric formatting and NSS log type table kept. Differences are whitespace/indentation normalization only.
AUDITED ORIG+FIX/PORT nwnss.histogram src/nwnss/library/misc/histogram.c Compared with original public_core/library/misc/histogram.c; core histogram math/registration kept. Tests cover count/event bucket placement, high-water marks, event sums, duplicate/full registration rejection, and userspace no-op console hooks. Console command/screen hooks are inert in userspace until the NSS console/admin layer exists; includes normalized.
AUDITED ORIG+FIX nwnss.lbvolume src/nwnss/library/misc/lbVolume.c Compared with original public_core/library/misc/lbVolume.c; differences are whitespace/diff-check cleanup only. Test coverage exercises snapshot/QS/auto-rename/pool name generation, volume-name validation error paths, reserved names, and admin-volume rename guards.
AUDITED GENERATED ORIG generated nssErrorTable build src/nwnss/library/misc/nssErrorTable.c No longer kept as a tracked source blob. CMake now generates this file in the build tree with the original imported buildErrorTranslation.prl from include/nwnss/public/zError.h, matching the original Makefile.nssErrorTable model.
AUDITED PORT nwnss.rand, nwnss.namespace src/nwnss/library/misc/rand.c No original provider found beyond rand.h/libNSS.imp/callers after NSS/sharedsrc and Novell CLib NDK scans; the NDK only confirms standard rand/srand repeatable-seed expectations. Seed-deterministic PRNG port checked in 0700/0701/0718 and extended with seedRandQuad; also provides xStdlib.h rand/random/srand/srandom/initstate/setstate wrappers; libsodium only initializes default state before explicit seeding.
AUDITED PORT nwnss.rbpTree src/nwnss/library/misc/rbpTree.c No original provider found beyond rbpTree.h/libNSS.imp/callers; CLRS-style algorithmic port checked against header contract in 0703 and strengthened in 0705 with explicit red/black, parent-link, binary-search-order, black-height, and Coin3D-style insertion/deletion stress coverage. Coin3D rbptree.cpp was checked only as an external BSD-licensed CLRS comparison and was not imported.
AUDITED ORIG+FIX/PORT nwnss.register src/nwnss/library/misc/register.c Compared with original public_core/library/misc/register.c; registration flow kept. Differences are include-path fixes, userspace no-op for kernel/private allocator free-list check, and LB_strmcpy mapping.
AUDITED ORIG wrapper link smoke src/nwnss/library/misc/sysimp.c Wrapper for original sharedsrc sysimp.c.h; include path changed to sharedsrc/. Userspace DDS/NDPS avoidance is in the sharedsrc compat guard.
AUDITED ORIG wrapper nwnss.xml src/nwnss/library/misc/xmlNSS.c Wrapper for original sharedsrc xmlNSS.c.h; wrapper comment plus sharedsrc/ include path only. XML tag/attribute/CDATA paths covered by nwnss.xml.
AUDITED ORIG+FIX nwnss.xml src/nwnss/library/misc/xmlNSS2.c Compared with original public_core/library/misc/xmlNSS2.c; XML conversion logic kept. Differences are NSS userspace stdlib/stdio/unicode includes and whitespace cleanup.

Sources: library/os

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.alarm src/nwnss/library/os/alarm.c Compared with original public_core/library/os/alarm.c; alarm wheel/one-shot/cyclic logic kept. Userspace port removes kernel timer semaphore/work callback re-arm, adds typed callbacks and include-path/HZ compatibility; tests cover immediate/delayed/canceled one-shots, cyclic requeue and alarm stop.
AUDITED ORIG+FIX nwnss.config src/nwnss/library/os/config.c Compared with original public_core/library/os/config.c; Config initializer and startup-derived hash/tick fields kept. Differences are linux/module.h removal, include-path normalization and whitespace cleanup; tests cover defaults, hash masks, tick conversions and LV purge defaults.
AUDITED PORT nwnss.utc src/nwnss/library/os/currentTime.c No userspace original provider exists after checking public_core/library/utc and public_core/sharedsrc; public_core/nsslnxlib/nssLnxDummy.c has a kernel jiffies-oriented GetCurrentTime, while public_core/library/utc/gethres.386 documents the high-resolution timer unit as 100 microseconds. The userspace port keeps GetCurrentTime() on a monotonic centisecond/HZ=100 scale and now exposes GetHighResolutionTimer() on the documented 1/10000-second scale for checker/compression callers; covered by nwnss.utc.
AUDITED ORIG+FIX/PORT nwnss.schedule, nwnss.snooze src/nwnss/library/os/delay.c Compared with original public_core/library/os/delay.c and the original scheduler macros in shared/sdk/internal/nssOSAPIs.h; userspace keeps the scheduler API as real functions. LB_delay, ZOS_Sleep, ZOS_ScheduleWorkToDo and now ZOS_YieldThread preserve the original MPKNSS scheduling boundary by dropping/reacquiring the global lock when the current thread owns it; tests cover locked delay, schedule callbacks outside the lock and yield allowing another thread through the lock boundary.
AUDITED ORIG+FIX nwnss.inst src/nwnss/library/os/inst.c Compared with original public_core/library/os/inst.c; instrumentation harvest/reset/init logic kept. Differences are linux/module.h removal and include-path normalization; tests cover file/cache/Linux/BST counter harvest/reset and cyclic init wiring.
AUDITED ORIG+FIX nwnss.mailbox src/nwnss/library/os/mailbox.c Compared with original public_core/library/os/mailbox.c; mbInit/mbSetHigh behavior kept. Differences are procdefs/include-path normalization and whitespace cleanup; tests cover empty/full/FIFO, peek/drop, next/give and wraparound behavior.
AUDITED PORT nwnss.neb src/nwnss/library/os/nebEventPort.c Explicit NEB/nebus service port rechecked in 0740/0741. No original NEB provider implementation is part of the delivered NSS source set beyond neb.h/nebpub.h/nebmpk.h; this file remains a bounded in-process userspace event-bus port. The registry is process-local by design: every process loading libnwnss gets its own consumers, producers and filters. It now covers the full public nebpub.h surface used for linking/tests (GetEventBlocks, ReturnEventBlocks, producer/consumer/filter registration and unregister, name queries, synchronous ProduceEvent). Filters are registered/unregistered for ABI compatibility but do not invent external NEB filtering semantics. This is temporary boundary code; if cross-process NSS events become necessary, the shared registry/routing should move to an explicit nwserv-managed service or endpoint rather than hidden global state in libnwnss.
AUDITED PORT nwnss.pssmpk src/nwnss/library/os/pssmpk.c pthread owner semantics checked/fixed in 0692.
AUDITED ORIG+FIX/PORT nwnss.snooze src/nwnss/library/os/snooze.c Compared with original public_core/library/os/snooze.c; snooze queue/timeout/roust logic kept. Differences are linux/module.h removal, include-path normalization and a legacy callback cast for secOneShot; tests cover empty roust behavior and the scheduler/snooze boundary remains covered by nwnss.schedule/nwnss.snooze.
AUDITED ORIG+FIX nwnss.worktodo src/nwnss/library/os/worktodo.c Compared with original public_core/library/os/worktodo.c; fillInWork field setup kept. Differences are procdefs/include-path normalization to library/xStdlib.h; tests cover resource tag, callback, reserved fields and NULL-user-parameter preservation.

Sources: library/parse

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.parse src/nwnss/library/parse/pcmdline.c Compared with original public_core/library/parse/pcmdline.c; switch parsing/validation body kept. Differences are include-path fixes, NSS LB_* function mappings, stdarg include, and userspace console/registration dependencies. Tests cover named values, boolean/no-boolean, map-upper, callbacks, clamped numeric input, and unknown-switch handling.

Sources: library/stdio

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/aprintf.c Compared with original public_core/library/stdio/aprintf.c; only wio.h include-path normalization and trailing whitespace cleanup. Output path remains the original LB__wioOutput wrapper.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/errprintf.c Compared with original public_core/library/stdio/errprintf.c; changes are include-path normalization, removal of kernel-only linux/module.h/MPK-local include, addition of the required NSS stdlib header, and whitespace cleanup. Error stack formatting body is otherwise kept.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/printf.c Compared with original public_core/library/stdio/printf.c; only wio.h include-path normalization and trailing whitespace cleanup. Wrapper still calls original LB__wioOutput path.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/snprintf.c Compared with original public_core/library/stdio/snprintf.c; formatter logic kept. Changes are userspace include replacements, guarded CHAR_* defines, NSS header includes, local STACK_ALLOC/STACK_FREE compile fix, and whitespace cleanup. Core integer/string/truncation/%L paths covered by nwnss.stdio.
AUDITED ORIG+FIX nwnss.stdio include/nwnss/library/stdio/snprintf.h Compared with original public_core/library/stdio/snprintf.h; complete private formatter header kept. Changes are Linux <limits.h>/stdint.h userspace includes and whitespace-only cleanup.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/sprintf.c Compared with original public_core/library/stdio/sprintf.c; changes are procdefs/xStdio/limits include fixes and trailing whitespace cleanup. Wrapper behavior covered by nwnss.stdio.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/vaprintf.c Compared with original public_core/library/stdio/vaprintf.c; only wio.h include-path normalization. Wrapper still calls original LB__wioOutput path.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/vprintf.c Compared with original public_core/library/stdio/vprintf.c; only wio.h include-path normalization. Wrapper still calls original LB__wioOutput path.
AUDITED ORIG+FIX nwnss.stdio src/nwnss/library/stdio/vsprintf.c Compared with original public_core/library/stdio/vsprintf.c; changes are procdefs/xStdio/limits include fixes. Wrapper behavior covered by nwnss.stdio.

Sources: library/stdlib

Status Kind Test coverage File Notes
AUDITED PORT nwnss.stdlib src/nwnss/library/stdlib/atoi.c No standalone LB_atoi original/sharedsrc found; libc-near wrapper over audited LB_strtol. Whitespace/sign/no-digits semantics covered in 0697/0708.
AUDITED ORIG wrapper nwnss.stdlib src/nwnss/library/stdlib/atoq.c Wrapper for byte-identical original public_core/sharedsrc/atoq.c.h; decimal/sign/no-digits semantics covered.
AUDITED PORT link smoke src/nwnss/library/stdlib/exit.c Compared with original public_core/library/stdlib/exit.c; not ORIG+FIX because the NetWare/NLM termination boundary is intentionally a no-op userspace port. Original Linux NSS already keeps LB_exitMyselfAndReturn as a runtime boundary; LB_exitMyselfAndWait is kept as the matching userspace no-op.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/free.c Compared with original public_core/library/stdlib/free.c; not ORIG+FIX because the MKL delayed-free/debug-list allocator is intentionally mapped to libc free at the userspace memory boundary. Public LB_free ABI preserved; covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/freeForNCPReply.c Compared with original public_core/library/stdlib/freeForNCPReply.c; original is a special NCP reply free path outside NSS malloc-debug/MKL tracking because the NetWare NCP handler owns reply-buffer lifetime. libnwnss maps that ownership boundary to libc free for now; this is a future Mars-NWE reply-buffer hook, not an active nwconn dependency. Distinct public symbols are preserved; covered by nwnss.zalloc/link.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/freePage.c Compared with original public_core/library/stdlib/freePage.c; not ORIG+FIX because the physical-page free boundary is intentionally mapped to libc free in userspace. Original API names and PageInst accounting preserved; covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/malloc.c Compared with original public_core/library/stdlib/malloc.c; not ORIG+FIX because the MKL/NSS allocation metadata path is intentionally replaced by a libc userspace boundary. ZERO_FILL now zeroes the full libc allocation block where Linux exposes malloc_usable_size(), matching the original full-block zeroing expectation used by zrealloc. Public LB_* ABI names are preserved; malloc/stack allocator basics covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/mallocPage.c Compared with original public_core/library/stdlib/mallocPage.c; not ORIG+FIX because physical page allocation is intentionally mapped to page-aligned libc memory. Original page allocator ABI and PageInst accounting preserved; covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/mallocPageWithFlags.c Compared with original public_core/library/stdlib/mallocPageWithFlags.c; not ORIG+FIX because physical page allocation is intentionally mapped to page-aligned libc memory. Flags are mapped only where meaningful for the userspace allocator; covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/mallocForNCPReply.c Compared with original public_core/library/stdlib/mallocForNCPReply.c; original deliberately bypasses NSS malloc-debug/MKL tracking because NetWare NCP reply buffers are freed by the NCP handler. libnwnss maps that external ownership boundary to libc malloc for now. Mars-NWE currently uses static/connection-side reply buffers rather than a matching dynamic NCP reply allocator, but this symbol remains a future hook for reply-buffer pools, zero-copy send buffers, or separated NCP lifetime rules. Distinct public symbols are preserved; covered by nwnss.zalloc/link.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/realloc.c Compared with original public_core/library/stdlib/realloc.c; not ORIG+FIX because MKL allocation metadata is intentionally unavailable in the current userspace allocator. The port now keeps the original allocate/copy/free shape instead of libc realloc-in-place semantics and copies the previous full allocation block where Linux exposes malloc_usable_size(). Public LB_realloc ABI preserved; covered by nwnss.zalloc.
AUDITED PORT nwnss.stdlib src/nwnss/library/stdlib/strtol.c No LB_strtol original/sharedsrc found beyond xStdlib.h/libNSS.imp/callers. Host libc strtol used as Novell/POSIX-compatible conversion port; base 0/2/16/36, endptr, signs, no-digits and ERANGE overflow covered in 0708.
AUDITED PORT nwnss.stdlib src/nwnss/library/stdlib/itoa.c No LB_itoa/LB_utoa original/sharedsrc found beyond xStdlib.h/libNSS.imp. Userspace port preserves caller-owned buffer/return-value ABI, supports bases 2..36 with lowercase digits, treats invalid bases as an empty string, and formats negative decimal values with a leading minus while non-decimal negative values follow unsigned two's-complement compatibility. Covered by nwnss.stdlib.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/zalloc.c Compared with original public_core/library/stdlib/zalloc.c; not ORIG+FIX because MKL allocation metadata is intentionally replaced by libc. The original zeroes the full OS/MKL allocation block so later zrealloc growth cannot expose dirty allocator tail bytes; the userspace port now mirrors that on Linux with malloc_usable_size(). Original ABI aliases preserved; zero-fill behavior covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/zallocPage.c Compared with original public_core/library/stdlib/zallocPage.c; not ORIG+FIX because physical zero-page allocation is intentionally mapped to page-aligned libc memory plus memset. Original ABI and PageInst accounting preserved; covered by nwnss.zalloc.
AUDITED PORT nwnss.zalloc src/nwnss/library/stdlib/zrealloc.c Compared with original public_core/library/stdlib/zrealloc.c; not ORIG+FIX because MKL usable-size metadata is unavailable in standalone userspace. Port now uses manual allocate/copy/free plus Linux malloc_usable_size where available: growth copies the old full block and zeroes newly exposed capacity, while shrink copies requested bytes and zeroes the remaining new allocation tail. Covered by nwnss.zalloc.

Sources: library/unicode

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/ByteToUnicode.c Compared with original public_core/library/unicode/ByteToUnicode.c; conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/LenByteToUnicode.c Compared with original public_core/library/unicode/LenByteToUnicode.c; bounded byte-to-unicode conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/LenMacByteToUnicode.c Compared with original public_core/library/unicode/LenMacByteToUnicode.c; bounded Mac byte conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/MacByteToUnicode.c Compared with original public_core/library/unicode/MacByteToUnicode.c; Mac byte conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/RegisterUnicodeConverter.c Compared with original public_core/library/unicode/RegisterUnicodeConverter.c; registration/table-build flow kept. Differences are include-path fixes, _NSS_INTERNAL_ exposure for imported globals, procdefs userspace include, and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/UnRegisterUnicodeConverter.c Compared with original public_core/library/unicode/UnRegisterUnicodeConverter.c; unregister/table cleanup flow kept. Differences are include-path fixes, _NSS_INTERNAL_ exposure, procdefs userspace include, and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/UnicodeToByte.c Compared with original public_core/library/unicode/UnicodeToByte.c; unicode-to-byte conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/UnicodeToMacByte.c Compared with original public_core/library/unicode/UnicodeToMacByte.c; Mac unicode-to-byte conversion logic kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/UnicodeToUntermByte.c Compared with original public_core/library/unicode/UnicodeToUntermByte.c; unterminated byte output path kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/UnicodeToUntermMacByte.c Compared with original public_core/library/unicode/UnicodeToUntermMacByte.c; unterminated Mac byte output path kept. Differences are include-path/userspace header cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/componentUnicpy.c Compared with original public_core/library/unicode/componentUnicpy.c; differences are whitespace only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/componentUnilen.c Compared with original public_core/library/unicode/componentUnilen.c; byte-identical or whitespace-only cleanup.
AUDITED ORIG+FIX nwnss.codepage src/nwnss/library/unicode/getMacCodePageName.c Compared with original public_core/library/unicode/getMacCodePageName.c; codepage lookup logic kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/getNssUnicodeVersion.c Compared with original public_core/library/unicode/getNssUnicodeVersion.c; version return logic kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG wrapper nwnss.utf8 src/nwnss/library/unicode/uni2utf.c Wrapper translation unit for original sharedsrc uni2utf.c.h; shared implementation carries only include-path cleanup. UTF-8 conversion paths covered by nwnss.utf8.
AUDITED ORIG wrapper nwnss.unicode src/nwnss/library/unicode/unicat.c Wrapper translation unit for original sharedsrc unicat.c.h; wrapped implementation differs only by xUnicode.h include-path cleanup.
AUDITED ORIG wrapper nwnss.unicode src/nwnss/library/unicode/unicmp.c Wrapper translation unit for original sharedsrc unicmp.c.h; wrapped implementation differs only by include-path and whitespace cleanup.
AUDITED ORIG+FIX/PORT nwnss.unicode, nwnss.utf8, nwnss.codepage src/nwnss/library/unicode/unicodeInit.c Restored from original public_core/library/unicode/unicodeInit.c; full converter/table-build logic is kept. Userspace differences are header-path fixes, nsslnxlib/nssunilib.h instead of kernel LibC headers, lock-contract preservation in the constructor, and a narrow skip for NSS private wildcard Unicode values when generated Unicode.org tables do not map them. The previous Mars C-table replacement was removed; runtime data now comes from generated .TAB files in third_party/unicodeTables.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/unicodeParse.c Compared with original public_core/library/unicode/unicodeParse.c; override/parser helpers kept. Differences are include-path fixes, _NSS_INTERNAL_ exposure for converter globals, and userspace guard around nssOSAPIs.h.
AUDITED ORIG wrapper nwnss.unicode src/nwnss/library/unicode/unicpy.c Wrapper translation unit for original sharedsrc unicpy.c.h; wrapped implementation differs only by include-path and whitespace cleanup.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/uniicmp.c Compared with original public_core/library/unicode/uniicmp.c; case-insensitive compare logic kept. Differences are include-path cleanup only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/uniicmpmac.c Compared with original public_core/library/unicode/uniicmpmac.c; Mac case-insensitive compare logic kept. Differences are include-path cleanup only.
AUDITED ORIG wrapper nwnss.unicode src/nwnss/library/unicode/unilen.c Wrapper translation unit for original sharedsrc unilen.c.h; wrapped implementation differs only by include-path cleanup.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/unilwr.c Compared with original public_core/library/unicode/unilwr.c; lowercase-in-place logic kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG wrapper nwnss.unicode src/nwnss/library/unicode/unimcpy.c Wrapper translation unit for original sharedsrc unimcpy.c.h; wrapped implementation differs only by include-path and whitespace cleanup.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/uninicmp.c Compared with original public_core/library/unicode/uninicmp.c; length-bounded case-insensitive compare logic kept. Differences are include-path cleanup only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/unitolower.c Compared with original public_core/library/unicode/unitolower.c; single-character lowercase lookup kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/unitoupper.c Compared with original public_core/library/unicode/unitoupper.c; single-character uppercase lookup kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/library/unicode/uniupr.c Compared with original public_core/library/unicode/uniupr.c; uppercase-in-place logic kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG wrapper nwnss.utf8 src/nwnss/library/unicode/utf2uni.c Wrapper translation unit for original sharedsrc utf2uni.c.h; shared implementation carries only include-path cleanup. UTF-8 conversion paths covered by nwnss.utf8.
AUDITED ORIG+FIX nwnss.utf8 src/nwnss/library/unicode/utf8LenToUniChar.c Compared with original public_core/library/unicode/utf8LenToUniChar.c; bounded UTF-8 decode logic kept. Differences are include-path cleanup and whitespace.
AUDITED ORIG+FIX nwnss.utf8 src/nwnss/library/unicode/utf8ToUniChar.c Compared with original public_core/library/unicode/utf8ToUniChar.c; UTF-8 single-character decode logic kept. Differences are include-path cleanup only.
AUDITED ORIG+FIX nwnss.utf8 src/nwnss/library/unicode/utf_tolower.c Compared with original public_core/library/unicode/utf_tolower.c; UTF-8 lowercase helper logic kept. Differences are include-path cleanup only.

Sources: library/utc

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/dos2str.c Compared with original public_core/library/utc/dos2str.c; DOS date/time string formatting logic kept. Difference is include-path normalization to include/utc.h only.
AUDITED ORIG+FIX/PORT nwnss.utc src/nwnss/library/utc/dos2utc.c Compared with original public_core/library/utc/dos2utc.c; DOS-to-UTC conversion/cache logic kept. Differences are include-path normalization, whitespace cleanup, and userspace timezone globals (NSS_TimeZoneOffset, NSS_DaylightOnOff, NSS_DaylightOffset) instead of kernel SynchronizedClock storage.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/dosd2str.c Compared with original public_core/library/utc/dosd2str.c; only utc.h include-path normalization.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/dost2str.c Compared with original public_core/library/utc/dost2str.c; only utc.h include-path normalization.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/getutctime.c Compared with original public_core/library/utc/getutctime.c; inactive #if 0 body kept, only commented include path adjusted.
AUDITED ORIG+FIX/PORT nwnss.utc src/nwnss/library/utc/local2utc.c Compared with original public_core/library/utc/local2utc.c; conversion logic kept. Differences are include-path normalization and userspace timezone globals instead of SynchronizedClock fields.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/msTime2utc.c Compared with original public_core/library/utc/msTime2utc.c; Microsoft time conversion/cache logic kept. Differences are include-path normalization and whitespace/diff-check cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/sec2utc.c Compared with original public_core/library/utc/sec2utc.c; seconds-to-UTC conversion/cache logic kept. Differences are include-path normalization and whitespace/diff-check cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/secsDiff.c Compared with original public_core/library/utc/secsDiff.c; only include-path and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/str2dos.c Compared with original public_core/library/utc/str2dos.c; parse/convert logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/str2dosd.c Compared with original public_core/library/utc/str2dosd.c; parse/convert logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/str2dost.c Compared with original public_core/library/utc/str2dost.c; parse/convert logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/str2utc.c Compared with original public_core/library/utc/str2utc.c; string-to-UTC parse logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX/PORT nwnss.utc src/nwnss/library/utc/utc2dos.c Compared with original public_core/library/utc/utc2dos.c; UTC-to-DOS conversion/cache logic kept. Differences are include-path normalization, userspace/kernel guard, and extern type alignment for the imported utcdata.c arrays.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/utc2local.c Compared with original public_core/library/utc/utc2local.c; conversion logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/utc2msTime.c Compared with original public_core/library/utc/utc2msTime.c; UTC-to-Microsoft time conversion/cache logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/utc2sec.c Compared with original public_core/library/utc/utc2sec.c; UTC-to-seconds conversion/cache logic kept. Differences are include-path normalization and whitespace cleanup.
AUDITED ORIG+FIX/PORT nwnss.utc src/nwnss/library/utc/utc2str.c Compared with original public_core/library/utc/utc2str.c; UTC breakdown logic kept. The original language-enabled ZOS_FormatDateAndTime call is replaced by a narrow userspace sprintf formatter until the ZOS/language UI layer is imported.
AUDITED ORIG+FIX nwnss.utc src/nwnss/library/utc/utcdata.c Compared with original public_core/library/utc/utcdata.c; calendar/DST data and parsing helpers kept. Differences are include-path normalization and whitespace cleanup.

Sources: library/wio

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.wio src/nwnss/library/wio/lnxLog.c Compared with original public_core/library/wio/lnxLog.c; Linux log formatting path is kept. Userspace differences guard the kernel-only linux/module.h include and provide no-op MPKNSS lock macros when this file is built outside the kernel MPK environment.
AUDITED PORT nwnss.wio src/nwnss/library/wio/nssUI.c Compared with original public_core/library/wio/nssUI.c; this is the deliberate WIO userspace boundary. The original file is a Linux kernel/procfs console provider, while the Mars port keeps the NSS console formatter/output entry points and routes them to host stdout/stderr friendly helpers without inventing a kernel procfs UI.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wWrapString.c Compared with original public_core/library/wio/wWrapString.c; wrapping logic is kept. Differences are include-path normalization to imported NSS headers and whitespace cleanup.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/waprintf.c Compared with original public_core/library/wio/waprintf.c; function body is unchanged except include-path normalization and trailing whitespace cleanup.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wgetpos.c Compared with original public_core/library/wio/wgetpos.c; cursor-position fallback logic is unchanged. Differences are include-path normalization to imported NSS headers.
AUDITED ORIG+FIX/PORT nwnss.wio src/nwnss/library/wio/wio.c Compared with original public_core/library/wio/wio.c; Linux/userspace screen I/O branch is intentionally minimal and no-op friendly. The non-Linux NetWare screen/key/pause logic is kept behind the original guard, while Linux/userspace output routes through host stdio-compatible helpers and preserves the MPKNSS lock drop/reacquire boundary around console output. Tests cover printf/aprintf/wPrintf/wAPrintf/vprintf wrappers, fixed cursor fallback, wrap path and nonblocking key path.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wpause.c Compared with original public_core/library/wio/wpause.c; Linux/userspace pause-buffer logic is kept. Differences are whitespace/trailing newline cleanup only.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wprintf.c Compared with original public_core/library/wio/wprintf.c; function body is unchanged except include-path normalization and trailing whitespace cleanup.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wsetpos.c Compared with original public_core/library/wio/wsetpos.c; cursor-position setter remains the original no-op/fallback path. Differences are include-path normalization to imported NSS headers.
AUDITED ORIG+FIX nwnss.wio src/nwnss/library/wio/wvprintf.c Compared with original public_core/library/wio/wvprintf.c; wrapper logic is unchanged except include-path normalization.

Sources: NSS cache

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.asyncio src/nwnss/nss/cache/asyncio.c Compared with original public_core/nss/cache/asyncio.c; dual Asyncio/ReadAhead control stores and allocation/free APIs kept. Differences are linux/module.h removal, include-path normalization, userspace pssConfig path, callback casts and whitespace; tests cover wait/no-wait allocation, pool exhaustion, free/reuse and independent RA pool behavior.
AUDITED ORIG+FIX nwnss.cache, nwnss.bond src/nwnss/nss/cache/bond.c Compared with original public_core/nss/cache/bond.c; bond agent/link/signal/flush logic is kept. Userspace differences are limited to removing the kernel-only linux/module.h, normalizing nCache.h/pssConfig.h include paths to imported headers, and whitespace/diff-check cleanup.
AUDITED ORIG+FIX/PORT nwnss.cache src/nwnss/nss/cache/cache.c Compared with original public_core/nss/cache/cache.c; cache-control structures, accounting and exported xCache surface are kept for the userspace library substrate. Kernel page-cache/highmem/buffer-head/vmalloc/swap paths are intentionally not enabled in libnwnss; the imported cache runtime remains a semantic substrate while persistence is supplied by Mars/NWFS adapters.
AUDITED ORIG+FIX/PORT nwnss.control src/nwnss/nss/cache/control.c Compared with original public_core/nss/cache/control.c; fixed-pool control allocation/free/wait logic is kept. Userspace differences normalize includes, use LB_bzero/LB_free, cast legacy initializer callbacks, and keep dynamic cache-block expansion behind a disabled Linux branch until the real xCache-backed expansion boundary is imported/tested.
AUDITED ORIG+FIX/PORT nwnss.work src/nwnss/nss/cache/work.c Compared with original public_core/nss/cache/work.c; normal/high/low work pools, pending counters and FSM dispatch flow kept. Userspace port removes kernel scheduler dependency, uses NSS userspace scheduler wrappers, normalizes includes, casts legacy callbacks and routes debug printk through LB_aprintf; tests cover startup/shutdown, normal/high/low/queued scheduling, dispatch order, FSM action/parameter storage and pending-work drain.

Sources: NSS lib

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.bitmap src/nwnss/nss/lib/bitmap.c Compared with original public_core/nss/lib/bitmap.c; bitmap allocation/manipulation logic kept. Userspace difference routes allocation through imported library/xStdlib.h/libc-backed zalloc compatibility and normalizes include paths to library/omni.h and library/bitmap.h; remaining changes are comments and whitespace cleanup. Test coverage now exercises allocation, max/count, single/range set-clear, end-of-map bounds, first-fit find/clear behavior, no-run failure, start tracking, and disjoint runs.
AUDITED ORIG+FIX nwnss.crc src/nwnss/nss/lib/crc.c Compared with original public_core/nss/lib/crc.c; CRC/string-hash algorithms kept. Differences are include-path normalization to library/crc.h/library/xUnicode.h, explanatory provenance comment, and whitespace cleanup. Test coverage now exercises PNG CRC-32 vector, split running updates, zero-length update, string/lowercase helpers, length-limited lowercase helper, and Unicode lowercase folding through the generated Unicode tables.
AUDITED ORIG+FIX nwnss.hash src/nwnss/nss/lib/hash.c Compared with original public_core/nss/lib/hash.c; generic hash-table logic kept. Differences are removal of kernel-only linux/module.h, include-path normalization to library/omni.h, library/bit.h, library/hash.h, and whitespace cleanup. Functional coverage exercises init/insert/find/delete/apply/stats/grow/shrink/destroy collision paths.
AUDITED ORIG+FIX/PORT nwnss.xerror src/nwnss/nss/lib/setErrno.c Compared with original public_core/nss/lib/setErrno.c; GeneralMsg/Msg error priority logic and circular error log body kept. Userspace differences remove kernel module.h, use imported include paths, define RunningProcess as 0 until NSS process identity exists, and store Msg_s.sys.where through uintptr_t into the QUAD carrier. Tests cover first-error behavior, no-memory/out-of-space priority, forced overwrite, generated error table names, and pointer round-trip for MSG_SetStatus().

Sources: NSS msg

Status Kind Test coverage File Notes
AUDITED ORIG+FIX/PORT nwnss.headers, link smoke src/nwnss/nss/msg/msg.c Compared with original public_core/nss/msg/msg.c; message manager type/object/method/door dispatch, async-send work setup and close-notify flow are kept. Userspace/modern-compiler differences add no-op mpkEnter/mpkExit for the non-kernel build, route Msg_s pointer fields through uintptr_t/QUAD, and cast old K&R-style constructor/destructor/match/method callbacks to their real signatures.
AUDITED ORIG+FIX nwnss.slab src/nwnss/nss/msg/slab.c Compared with original public_core/nss/msg/slab.c; slab/object-cache allocation, prefab/destructor and alarm/list flow are kept. Differences are include-path normalization, giving the legacy slabShouldNotBeSignaled callbacks the real Agent_s * argument used by the caller, casting the prefab callback, and whitespace cleanup.
AUDITED ORIG+FIX link smoke src/nwnss/nss/msg/switchboard.c Compared with original public_core/nss/msg/switchboard.c; switchboard named-client/key exchange flow is kept. Observed differences are formatting/indentation and debug macro whitespace cleanup only; no userspace replacement or shortcut is introduced.

Sources: nsslnxlib

Status Kind Test coverage File Notes
AUDITED ORIG+FIX nwnss.codepage, nwnss.unicode src/nwnss/nsslnxlib/nwlocale.c Compared with original public_core/nsslnxlib/nwlocale.c; CP437 locale tables and OS codepage defaults kept. Differences are whitespace/diff-check cleanup only.
AUDITED PORT nwnss.codepage, nwnss.unicode, nwnss.utf8 src/nwnss/nsslnxlib/unilib.c Userspace port of original public_core/nsslnxlib/unilib.c rule-table loader. It preserves the NSS .TAB layout and public entry points (UniGetTable, UniGetMacintoshTable, loc2uni, uni2loc, loc2unipath, uni2locpath, chr2lwr, chr2upr), but replaces kernel file/lock/memory primitives with libc file I/O and process-local state. The .TAB files are generated by third_party/unicodeTables/scripts/gen_nss_unitables.py from Unicode.org data rather than copied from Novell sources. The generated files are loader-compatible, not intended to be byte-identical to Novell shared/sdk/unitables: local comparison showed common DOS/Mac mappings usually match, while generated Unicode.org tables omit some Novell/private extras; generated UNI_000.TAB contains all original lower-case mappings and all but one original upper-case mapping identically, with extra newer BMP case pairs from UnicodeData.txt. The table search path is configured at CMake time into a generated private nssConfig.h from NSS_UNITABLE_DIRS, or defaults to build generated tables, bundled generated tables, and install datadir; NSS_UNITABLE_DIR remains a runtime override for test/local use.

Sources: sharedsrc included implementations

Status Kind Test coverage File Notes
AUDITED ORIG nwnss.stdlib src/nwnss/sharedsrc/atoq.c.h Byte-identical to original public_core/sharedsrc/atoq.c.h; wrapped by library/stdlib/atoq.c and covered by nwnss.stdlib.
AUDITED ORIG+FIX link smoke src/nwnss/sharedsrc/dbginit.c.h Compared with original public_core/sharedsrc/dbginit.c.h; differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX/PORT nwnss.guid src/nwnss/sharedsrc/guid.c.h Compared with original public_core/sharedsrc/guid.c.h; GUID parse/format/validate and generation logic are kept. Userspace differences are include-path fixes, CLOCK_REALTIME/libc time for DCE 100ns timestamps, /dev/urandom or libc-rand fallback for the node ID, and explicit multicast marking for random node IDs because no NetWare MLID/NIC provider exists in libnwnss userspace. The NetWare/kernel-only volume-name helpers are exposed for userspace callers and covered by nwnss.guid.
AUDITED ORIG+FIX link smoke, future management tests src/nwnss/sharedsrc/mgmt.c.h Compared with original public_core/sharedsrc/mgmt.c.h in 0769; management virtual-file/XML helper logic is kept. Userspace differences expose the Linux/NDP sections under NSS_USERSPACE, neutralize direct MPKNSS macro use inside the shared template so calls route through the audited userspace boundary, and keep include/whitespace cleanup only.
AUDITED ORIG sharedsrc link smoke, future NDP tests src/nwnss/sharedsrc/ndp_comn.c.h Compared with original public_core/sharedsrc/ndp_comn.c.h in 0769; no semantic diff found. The process-local globals are supplied by the wrapper; shared NDP write/read/dispatch logic remains original.
AUDITED ORIG sharedsrc link smoke src/nwnss/sharedsrc/ndp_guids.c.h Compared with original public_core/sharedsrc/ndp_guids.c.h in 0769; NDP application/module GUID constants are unchanged.
AUDITED ORIG+FIX/PORT boundary link smoke, future NDP tests src/nwnss/sharedsrc/ndp_idbroker.c.h Compared with original public_core/sharedsrc/ndp_idbroker.c.h in 0769. ID-broker XML/user/group/GUID mapping flow is kept; userspace differences avoid dynamic application-loader dlopen/ndp_app coupling in libnwnss, compile the kernel-style authenticated-ID paths under NSS_USERSPACE, and cast the pthread handler to the real void *(*)(void *) ABI.
AUDITED ORIG+FIX link smoke, future NDP tests src/nwnss/sharedsrc/ndp_messagehandler.c.h Compared with original public_core/sharedsrc/ndp_messagehandler.c.h in 0769; message registration/echo/deregister control flow is kept. Only indentation cleanup was found.
AUDITED ORIG+FIX link smoke src/nwnss/sharedsrc/otherErrorTables.c.h Compared with original public_core/sharedsrc/otherErrorTables.c.h; differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.stdlib src/nwnss/sharedsrc/parseDSObjectName.c.h Compared with original public_core/sharedsrc/parseDSObjectName.c.h; differences are whitespace/diff-check cleanup only.
AUDITED ORIG+FIX nwnss.que src/nwnss/sharedsrc/que.c.h Compared with original public_core/sharedsrc/que.c.h; differences limited to include paths, legacy callback casts for modern compiler types, and whitespace/diff-check cleanup.
AUDITED ORIG nwnss.xstring src/nwnss/sharedsrc/stricmp.c.h Byte-identical to original public_core/sharedsrc/stricmp.c.h; included by xString.c for LB_stricmp.
AUDITED ORIG+FIX/PORT link smoke src/nwnss/sharedsrc/sysimp.c.h Compared with original public_core/sharedsrc/sysimp.c.h; import table logic kept. Userspace guard avoids DDS/NDPS headers and supplies narrow DDS placeholder typedefs for compile only; no NDPS runtime is enabled.
AUDITED ORIG+FIX nwnss.utf8 src/nwnss/sharedsrc/uni2utf.c.h Compared with original public_core/sharedsrc/uni2utf.c.h; UTF-8 encoding logic kept. Difference is omni.h include-path normalization only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/sharedsrc/unicat.c.h Compared with original public_core/sharedsrc/unicat.c.h; difference is xUnicode.h include-path normalization only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/sharedsrc/unicmp.c.h Compared with original public_core/sharedsrc/unicmp.c.h; differences are include-path and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/sharedsrc/unicpy.c.h Compared with original public_core/sharedsrc/unicpy.c.h; differences are include-path and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/sharedsrc/unilen.c.h Compared with original public_core/sharedsrc/unilen.c.h; differences are xUnicode/inlines include-path normalization only.
AUDITED ORIG+FIX nwnss.unicode src/nwnss/sharedsrc/unimcpy.c.h Compared with original public_core/sharedsrc/unimcpy.c.h; differences are include-path and whitespace cleanup only.
AUDITED ORIG+FIX nwnss.utf8 src/nwnss/sharedsrc/utf2uni.c.h Compared with original public_core/sharedsrc/utf2uni.c.h; UTF-8 decoding logic kept. Difference is omni.h include-path normalization only.
AUDITED ORIG+FIX/PORT boundary link smoke, future virtual-IO tests src/nwnss/sharedsrc/virtualIO.c.h Compared with original public_core/sharedsrc/virtualIO.c.h in 0769. Virtual-file data-stream/control flow, callback registration and XML/JNI hooks remain visible. Userspace differences enable the virtual-I/O sections under NSS_VIRTUAL_IO, avoid JNI in NSS_USERSPACE, use a zero module handle for import/unimport stubs, cast legacy read/write callbacks to real signatures, carry Msg_s data pointers via uintptr_t, and do not enable real kernel/JNI/block I/O.
AUDITED ORIG+FIX nwnss.xml src/nwnss/sharedsrc/xmlNSS.c.h Compared with original public_core/sharedsrc/xmlNSS.c.h; XML parser logic kept. Differences are whitespace/diff-check cleanup only.

3. Audit workflow for future patches

Every future audit/cleanup patch should include:

  1. Original source path(s) checked.
  2. Classification of every changed file: ORIG, ORIG+FIX, PORT, or TEMP.
  3. Explanation of any NSS_USERSPACE guard.
  4. Confirmation that no disk/block/VFS I/O was enabled by default.
  5. Test coverage added or an explicit reason why direct semantics cannot yet be tested.
  6. Update to this checklist.

Preferred next audit order:

  • finish core compat: latch.h, procdefs.h, remaining nssOSAPIs.h deltas
  • then NDP/MGMT sharedsrc original-diff classification
  • then low-level ports that already have tests
  • then large COMN/NSS source groups with tests added per reachable behavior