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,.hand.c.hfiles 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_USERSPACEguards. - 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
.ccompile 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 entriesPARTIAL: 0 entriesTODO: 0 entriesTEMP: 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/*.his for libnwfs/Mars-NCP/OtherFS/HostFS-facing adapter boundaries that make NSS provider operations usable by the Mars wrapper.*Fuse.c/*.his for FUSE/nwnssmount-facing provider callbacks and inode/dentry-like request adaptation.*IoUring.c/*.his for concrete Linux direct/block/file I/O execution: read/write/flush/fsync, registered files/buffers and submit/completion logic.*Runtime.c/*.his 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 exampleNssIoUring.corNssRuntime.c; avoid newnwnss*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:
nwservis the governor/control-plane supervisor. It starts and monitors processes such asnwconn,nwdirectoryand later optional providers; it is not the NCP server and should not route normal decoded NCP payloads.nwconnis the NCP server process. It owns client request parsing and reply packing, and callslibnwfsfor file/volume work.libnwfsis the Mars/NCP file compatibility wrapper. It maps Mars volume options, NCP wire layouts and HostFS/OtherFS state tolibnwnssprovider calls. It is not NSS provenance and is not the owner of future FUSE orio_uringbackends.libnwnssis the NSS provider. It owns NSS semantics for namespace, XAttr, quota, salvage and trustee-shaped metadata, plus future FUSE/io_uringand HostFS/OtherFS backend boundaries through explicit*Userspace.ccompanions.nwnssmountis the future FUSE mount consumer oflibnwnss;nwnssmuis the future TUI management utility for admin/inspect/repair/quota/salvage work.libnwndsis the future NDS/eDirectory compatibility library. It should own DN, GUID, UserID, Security Equivalence Vector, tree/context and trustee identity mapping and calllibnwdirectory. A separatenwndsprocess is optional later if shared state, caching, auth brokering, events or background jobs require a service.nwdirectoryis the LDAP/TinyLDAP-based directory server;libnwdirectoryis 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:
- Search the full NSS and nss-common sources for an original
.cprovider. - Search
public_core/sharedsrc/*.c.hand original makefiles for wrapper patterns. - If an original provider exists, replace or shrink the Mars port.
- 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.
- 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
.TABfiles fromthird_party/unicodeTablesare classified as GENERATED PORT DATA because the Novell.TABblobs have unsuitable/unknown standalone data licensing. - Do not mark the file
AUDITEDuntil the provenance decision and test coverage are recorded here. - 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.
- 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_windowsnovell-fs64-devel-2012.02.16-1.1.x86_64novell-fs64-devel-2015.05.11-3.1.x86_64novell-vfs-devel-2008.02.29-1windowsnovell-vfs-devel-2015.02.06-1windowsnovell-xattr-devel-2007.10.03-1linuxnovell-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 ASCIIctypehelpers, but does not provideLB_*NSS implementation sources. It supports keeping the libc-like Mars ports for thoselibNSS.impexports 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.hsurface and future metadata/trustee/XAttr integration shape, but do not provide a system NEB provider implementation or replacement source for the privatelibNSShelper 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:
- Original source path(s) checked.
- Classification of every changed file:
ORIG,ORIG+FIX,PORT, orTEMP. - Explanation of any
NSS_USERSPACEguard. - Confirmation that no disk/block/VFS I/O was enabled by default.
- Test coverage added or an explicit reason why direct semantics cannot yet be tested.
- Update to this checklist.
Preferred next audit order:
- finish core compat:
latch.h,procdefs.h, remainingnssOSAPIs.hdeltas - 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