nwerrors(3ncp)
NAME
nwerrors - list of error codes returned by libncp calls
SYNOPSIS
#include <nwcalls.h> NWE_* #include <nwnet.h> ERR_*
DESCRIPTION
This is list of codes returned by functions in libncp. Error codes are
split into several groups:
- OK
- When zero is returned, call was processed without problems.
- libc errors
- These values are same as errno values and they are listed in errno(3). Return value is libc error if it is in range 1-511.
- RPC errors (obsolete)
- These error codes are returned only by NWSM* group of functions. They are in range 512-524.
- libncp specific errors
- These error codes are in range 0x8700-0x87FF and are used for reporting non-standard problems in libncp.
- requester errors
- These error codes are in range 0x8800-0x88FF and are used for reporting standard problems in libncp.
- server errors
- These error codes in range 0x8900-0x89FF are error codes returned by server when calling NCP functions.
- NDS errors
- Error codes in range -1000 ... -256 are returned by NDS server system (-600 ... -799), by local NDS system (-300 ... -399) and by other subsystems (other).
- reserved errors
- Range -255 ... -1 is reserved. If some function returns this value, it is bug (this is probably forgotten libc return value (-1) or negative errno value)). Other ranges, not mentioned in this document, are reserved for future expansion.
LIBNCP SPECIFIC ERRORS
- 0x8701 NCPLIB_INVALID_MODE
- ~/.nwclient file has not mode 0600 or 0400 or
~/.nwclient file is readable or writeable by group or world
REQUESTER ERRORS
- 0x880E NWE_BUFFER_OVERFLOW
- Requested information is larger than supplied buffer.
- 0x880F NWE_SERVER_NO_CONN
- You have no connection to server (at this time, if ~/.nwclient is empty, this error is returned).
- 0x8816 NWE_INVALID_NCP_PACKET_LENGTH
- Reply returned by server fails in some consistency check (reply is shorter than expected).
- 0x8834 NWE_USER_NO_NAME
- User name not specified (returned by ncp_find_conn_spec if user name was not found).
- 0x8836 NWE_PARAM_INVALID
- Invalid parameter (NULL, out of range...) was passed into some function.
- 0x8847 NWE_SERVER_NOT_FOUND
- Specified server was not found (see also 0x89FC:NWE_SERVER_UNKNOWN). This error is returned, if ANY server was not found on the network (no response from SAP resolver).
- 0x8861 NWE_SIGNATURE_LEVEL_CONFLICT
- Requested signature level is not compatible with server setting.
- 0x8870 NWE_INVALID_LEVEL
- Unknown information type was requested from NWCCGetConnInfo.
- 0x88FF NWE_REQUESTER_FAILURE
- Unspecified libncp error, ncp unavailable and so on.
SERVER ERRORS
- 0x89D3 NWE_Q_NO_RIGHTS
- You have not rights to specified (print) queue.
- 0x89DF NWE_PASSWORD_EXPIRED
- Your password has expired, this login was `grace' login.
- 0x89E9 NWE_BIND_MEMBER_ALREADY_EXISTS
- Object is already in set.
- 0x89FB NWE_NCP_NOT_SUPPORTED
- Attempted function is not available on this version of NetWare.
- 0x89FC NWE_SERVER_UNKNOWN
- Server was not found.
- 0x89FD NWE_CONN_NUM_INVALID
- Operation attempted on invalid connection (NWClearConnection(3ncp), NWGetConnInfo(3ncp), ...) or your own connection timed out (nds4linux).
- 0x89FF NWE_SERVER_FAILURE
- Unspecified server error (bad parameters passed, LinWare/Mars/Windows on other end of wire, bad password, ...).
NDS/UNICODE ERRORS
- -301 ERR_NOT_ENOUGH_MEMORY
- Not enough memory (see also errno(3):ENOMEM).
- -302 ERR_BAD_KEY
- Invalid key value DCK_* passed to NWDSGetContext or NWDSSetContext.
- -303 ERR_BAD_CONTEXT
- Invalid NWDSContextHandle was passed to some of NWDS* functions.
- -304 ERR_BUFFER_FULL
- Information is larger than passed buffer.
- -307 ERR_BUFFER_EMPTY
- Requested information does not exist in buffer. It can be programmer's error or unexpected reply from server.
- -308 ERR_BAD_VERB
- Operation attempted with buffer prepared for something else or buffer cannot contain requested information.
- -309 ERR_EXPECTED_IDENTIFIER
- Object name fails on some check (multiple dots, two equals or plus signs, backslash at the end of name...)
- -311 ERR_ATTR_TYPE_EXPECTED
- If object has multiple naming attributes, you must specify all with or without types, you must not mix it.
- -312 ERR_ATTR_TYPE_NOT_EXPECTED
- If object has multiple naming attributes, you must specify all without or with types, you must not mix it.
- -314 ERR_INVALID_OBJECT_NAME
- Something is wrong with object name (odd length returned by server, string returned from server is not zero terminated, object name is absolute, but has dot(s) at the end (.object.tree.)).
- -315 ERR_EXPECTED_RDN_DELIMITER
- Something is wrong with object name (multiple equal signs without intervening dot or plus sign).
- -316 ERR_TOO_MANY_TOKENS
- Something is wrong with object name (there is more dots at the end of object name than levels in current context name).
- -317 ERR_INCONSISTENT_MULTIAVA
- You are trying to apply default naming rule on typeless name with multiple naming attributes.
- -318 ERR_COUNTRY_NAME_TOO_LONG
- Country name must not exceed two characters.
- -319 ERR_SYSTEM_ERROR
- Something went wrong.
- -322 ERR_INVALID_HANDLE
- Application passed invalid iteration handle to one of NWDS* functions. It is bug in application.
- -323 ERR_BUFFER_ZERO_LENGTH
- Application passed empty request buffer to one of NWDS* functions. It is bug in application.
- -328 ERR_CONTEXT_CREATION
- An error occured in NWDSCreateContext. You should use NWDSCreateContextHandle, which has better error reporting.
- -330 ERR_INVALID_SERVER_RESPONSE
- Unexpected reply was returned from server.
- -331 ERR_NULL_POINTER
- NULL pointer was passed to some function. Only (some) output parameters can be NULL.
- -333 ERR_NO_CONNECTION
- You have not any connection for this context handle. At this moment (2.2.0.17), call NWDSAddConnection(NWDSContextHandle, NWCONN_HANDLE).
- -335 ERR_DUPLICATE_TYPE
- If object has multiple naming attributes, they must not have same name.
- -337 ERR_NOT_LOGGED_IN
- You are trying to authenticate connection before you logged in. You must first do NWDSLogin before call to NWDSAuthenticate.
- -338 ERR_INVALID_PASSWORD_CHARS
- Invalid characters in password.
- -340 ERR_TRANSPORT
- Transport not supported / referral addresses does not include any supported protocol.
- -341 ERR_NO_SUCH_SYNTAX
- Invalid Syntax ID was passed to NWDSGet/NWDSPut/NWDSCompute function.
- -342 ERR_INVALID_DS_NAME
- Multiple dots or some other problem (currently only in RemoveAllTypes).
- -348 ERR_UNICODE_FILE_NOT_FOUND
- Tables required for local<->unicode translation were not found (system defaults to ISO_8859-1).
- -353 ERR_DN_TOO_LONG
- Object name is too long.
- -354 ERR_RENAME_NOT_ALLOWED
- NWDSMoveObject cannot be used to rename object. Use either NWDSModifyRDN or NWDSModifyDN function calls.
- -601 ERR_NO_SUCH_ENTRY
- Specified object does not exist.
- -603 ERR_NO_SUCH_ATTRIBUTE
- None of requested attributes exists.
- -641 ERR_INVALID_REQUEST
- Server did not understand your request. Either your program did not fill up request buffer properly or server DS is too old.
- -656 ERR_CRUCIAL_REPLICA
- Replica cannot be removed (or type cannot be changed) because of it is last master replica of an partition.
- -659 ERR_TIME_NOT_SYNCHRONIZED
- Server time is not synchronized with rest of tree.
- -669 ERR_FAILED_AUTHENTICATION
- Invalid password or authentication time window exceeded.
- -683 ERR_INVALID_API_VERSION
- Server does not support this API version - it is too old. One of examples is NWDSAddObject if server does not support fragmented DSV_ENTRY_ADD, but you asked for it. Another example is NWDSListPartitionsExtInfo.
- -700 ERR_OBSOLETE_API
- Server does not support this API version - this API call is no longer supported. One of examples is NWDSRemovePartition if server runs NDS8.
BUGS
This manual page is incomplete and some error descriptions are confusing.