--- a/contrib/pam/pam_ncp_auth.c 2005-01-28 04:35:59.000000000 +1100 +++ b/contrib/pam/pam_ncp_auth.c 2010-03-27 15:18:45.000000000 +1100 @@ -257,6 +257,7 @@ #include #include #include +#include #include #include #include @@ -266,6 +267,7 @@ #include #include #include +#include #include "support.h" --- a/include/ncp/ipxlib.h 2005-01-28 04:35:59.000000000 +1100 +++ b/include/ncp/ipxlib.h 2010-03-27 15:20:07.000000000 +1100 @@ -63,32 +63,32 @@ struct sap_query struct sap_server_ident { - u_int16_t server_type __attribute__((packed)); - char server_name[48] __attribute__((packed)); - IPXNet server_network __attribute__((packed)); + u_int16_t server_type; + char server_name[48]; + IPXNet server_network; #ifdef SWIG - u_int8_t server_node[6] __attribute__((packed)); + u_int8_t server_node[6]; #else - IPXNode server_node __attribute__((packed)); + IPXNode server_node; #endif - IPXPort server_port __attribute__((packed)); - u_int16_t intermediate_network __attribute__((packed)); -}; + IPXPort server_port; + u_int16_t intermediate_network; +} __attribute__((packed)); #define IPX_RIP_REQUEST (0x1) #define IPX_RIP_RESPONSE (0x2) struct ipx_rt_def { - u_int32_t network __attribute__((packed)); - u_int16_t hops __attribute__((packed)); - u_int16_t ticks __attribute__((packed)); -}; + u_int32_t network; + u_int16_t hops; + u_int16_t ticks; +} __attribute__((packed)); struct ipx_rip_packet { - u_int16_t operation __attribute__((packed)); - struct ipx_rt_def rt[1] __attribute__((packed)); -}; + u_int16_t operation; + struct ipx_rt_def rt[1]; +} __attribute__((packed)); #ifdef SWIG #define IPX_BROADCAST_NODE "\xff\xff\xff\xff\xff\xff" --- a/include/ncp/kernel/ncp.h 2005-01-28 04:35:59.000000000 +1100 +++ b/include/ncp/kernel/ncp.h 2010-03-27 15:20:07.000000000 +1100 @@ -52,28 +52,28 @@ #define NCP_DEALLOC_SLOT_REQUEST (0x5555) struct ncp_request_header { - u_int16_t type __attribute__((packed)); - u_int8_t sequence __attribute__((packed)); - u_int8_t conn_low __attribute__((packed)); - u_int8_t task __attribute__((packed)); - u_int8_t conn_high __attribute__((packed)); - u_int8_t function __attribute__((packed)); - u_int8_t data[0] __attribute__((packed)); -}; + u_int16_t type; + u_int8_t sequence; + u_int8_t conn_low; + u_int8_t task; + u_int8_t conn_high; + u_int8_t function; + u_int8_t data[0]; +} __attribute__((packed)); #define NCP_REPLY (0x3333) #define NCP_POSITIVE_ACK (0x9999) struct ncp_reply_header { - u_int16_t type __attribute__((packed)); - u_int8_t sequence __attribute__((packed)); - u_int8_t conn_low __attribute__((packed)); - u_int8_t task __attribute__((packed)); - u_int8_t conn_high __attribute__((packed)); - u_int8_t completion_code __attribute__((packed)); - u_int8_t connection_state __attribute__((packed)); - u_int8_t data[0] __attribute__((packed)); -}; + u_int16_t type; + u_int8_t sequence; + u_int8_t conn_low; + u_int8_t task; + u_int8_t conn_high; + u_int8_t completion_code; + u_int8_t connection_state; + u_int8_t data[0]; +} __attribute__((packed)); #define NCP_VOLNAME_LEN (16) #define NCP_NUMBER_OF_VOLUMES (64) @@ -175,64 +175,64 @@ struct ncp_volume_info { #ifdef SWIG struct nw_info_struct { - u_int32_t spaceAlloc __attribute__((packed)); - u_int32_t attributes __attribute__((packed)); - u_int16_t flags __attribute__((packed)); - u_int32_t dataStreamSize __attribute__((packed)); - u_int32_t totalStreamSize __attribute__((packed)); - u_int16_t numberOfStreams __attribute__((packed)); - u_int16_t creationTime __attribute__((packed)); - u_int16_t creationDate __attribute__((packed)); - u_int32_t creatorID __attribute__((packed)); - u_int16_t modifyTime __attribute__((packed)); - u_int16_t modifyDate __attribute__((packed)); - u_int32_t modifierID __attribute__((packed)); - u_int16_t lastAccessDate __attribute__((packed)); - u_int16_t archiveTime __attribute__((packed)); - u_int16_t archiveDate __attribute__((packed)); - u_int32_t archiverID __attribute__((packed)); - u_int16_t inheritedRightsMask __attribute__((packed)); - u_int32_t dirEntNum __attribute__((packed)); - u_int32_t DosDirNum __attribute__((packed)); - u_int32_t volNumber __attribute__((packed)); - u_int32_t EADataSize __attribute__((packed)); - u_int32_t EAKeyCount __attribute__((packed)); - u_int32_t EAKeySize __attribute__((packed)); - u_int32_t NSCreator __attribute__((packed)); + u_int32_t spaceAlloc; + u_int32_t attributes; + u_int16_t flags; + u_int32_t dataStreamSize; + u_int32_t totalStreamSize; + u_int16_t numberOfStreams; + u_int16_t creationTime; + u_int16_t creationDate; + u_int32_t creatorID; + u_int16_t modifyTime; + u_int16_t modifyDate; + u_int32_t modifierID; + u_int16_t lastAccessDate; + u_int16_t archiveTime; + u_int16_t archiveDate; + u_int32_t archiverID; + u_int16_t inheritedRightsMask; + u_int32_t dirEntNum; + u_int32_t DosDirNum; + u_int32_t volNumber; + u_int32_t EADataSize; + u_int32_t EAKeyCount; + u_int32_t EAKeySize; + u_int32_t NSCreator; %pragma(swig) readonly - u_int8_t nameLen __attribute__((packed)); + u_int8_t nameLen; %pragma(swig) readwrite - byteLenPrefixCharArray entryName[255] __attribute__((packed)); -}; + byteLenPrefixCharArray entryName[255]; +} __attribute__((packed)); #else struct nw_info_struct { - u_int32_t spaceAlloc __attribute__((packed)); - u_int32_t attributes __attribute__((packed)); - u_int16_t flags __attribute__((packed)); - u_int32_t dataStreamSize __attribute__((packed)); - u_int32_t totalStreamSize __attribute__((packed)); - u_int16_t numberOfStreams __attribute__((packed)); - u_int16_t creationTime __attribute__((packed)); - u_int16_t creationDate __attribute__((packed)); - u_int32_t creatorID __attribute__((packed)); - u_int16_t modifyTime __attribute__((packed)); - u_int16_t modifyDate __attribute__((packed)); - u_int32_t modifierID __attribute__((packed)); - u_int16_t lastAccessDate __attribute__((packed)); - u_int16_t archiveTime __attribute__((packed)); - u_int16_t archiveDate __attribute__((packed)); - u_int32_t archiverID __attribute__((packed)); - u_int16_t inheritedRightsMask __attribute__((packed)); - u_int32_t dirEntNum __attribute__((packed)); - u_int32_t DosDirNum __attribute__((packed)); - u_int32_t volNumber __attribute__((packed)); - u_int32_t EADataSize __attribute__((packed)); - u_int32_t EAKeyCount __attribute__((packed)); - u_int32_t EAKeySize __attribute__((packed)); - u_int32_t NSCreator __attribute__((packed)); - u_int8_t nameLen __attribute__((packed)); - u_int8_t entryName[256] __attribute__((packed)); -}; + u_int32_t spaceAlloc; + u_int32_t attributes; + u_int16_t flags; + u_int32_t dataStreamSize; + u_int32_t totalStreamSize; + u_int16_t numberOfStreams; + u_int16_t creationTime; + u_int16_t creationDate; + u_int32_t creatorID; + u_int16_t modifyTime; + u_int16_t modifyDate; + u_int32_t modifierID; + u_int16_t lastAccessDate; + u_int16_t archiveTime; + u_int16_t archiveDate; + u_int32_t archiverID; + u_int16_t inheritedRightsMask; + u_int32_t dirEntNum; + u_int32_t DosDirNum; + u_int32_t volNumber; + u_int32_t EADataSize; + u_int32_t EAKeyCount; + u_int32_t EAKeySize; + u_int32_t NSCreator; + u_int8_t nameLen; + u_int8_t entryName[256]; +} __attribute__((packed)); #endif /* modify mask - use with MODIFY_DOS_INFO structure */ @@ -251,46 +251,46 @@ struct nw_info_struct { #define DM_MAXIMUM_SPACE (0x00002000L) struct nw_modify_dos_info { - u_int32_t attributes __attribute__((packed)); - u_int16_t creationDate __attribute__((packed)); - u_int16_t creationTime __attribute__((packed)); - u_int32_t creatorID __attribute__((packed)); - u_int16_t modifyDate __attribute__((packed)); - u_int16_t modifyTime __attribute__((packed)); - u_int32_t modifierID __attribute__((packed)); - u_int16_t archiveDate __attribute__((packed)); - u_int16_t archiveTime __attribute__((packed)); - u_int32_t archiverID __attribute__((packed)); - u_int16_t lastAccessDate __attribute__((packed)); - u_int16_t inheritanceGrantMask __attribute__((packed)); - u_int16_t inheritanceRevokeMask __attribute__((packed)); - u_int32_t maximumSpace __attribute__((packed)); -}; + u_int32_t attributes; + u_int16_t creationDate; + u_int16_t creationTime; + u_int32_t creatorID; + u_int16_t modifyDate; + u_int16_t modifyTime; + u_int32_t modifierID; + u_int16_t archiveDate; + u_int16_t archiveTime; + u_int32_t archiverID; + u_int16_t lastAccessDate; + u_int16_t inheritanceGrantMask; + u_int16_t inheritanceRevokeMask; + u_int32_t maximumSpace; +} __attribute__((packed)); #ifdef SWIG struct nw_file_info { struct nw_info_struct i; int opened; int access; - u_int32_t server_file_handle __attribute__((packed)); - u_int8_t open_create_action __attribute__((packed)); - fixedArray file_handle[6] __attribute__((packed)); -}; + u_int32_t server_file_handle; + u_int8_t open_create_action; + fixedArray file_handle[6]; +} __attribute__((packed)); #else struct nw_file_info { struct nw_info_struct i; int opened; int access; - u_int32_t server_file_handle __attribute__((packed)); - u_int8_t open_create_action __attribute__((packed)); - u_int8_t file_handle[6] __attribute__((packed)); -}; + u_int32_t server_file_handle; + u_int8_t open_create_action; + u_int8_t file_handle[6]; +} __attribute__((packed)); #endif struct nw_search_sequence { - u_int8_t volNumber __attribute__((packed)); - u_int32_t dirBase __attribute__((packed)); - u_int32_t sequence __attribute__((packed)); -}; + u_int8_t volNumber; + u_int32_t dirBase; + u_int32_t sequence; +} __attribute__((packed)); #endif /* _LINUX_NCP_H */ --- a/include/ncp/ncp.h 2005-01-28 04:35:59.000000000 +1100 +++ b/include/ncp/ncp.h 2010-03-27 15:20:07.000000000 +1100 @@ -91,21 +91,21 @@ struct nw_property { }; struct prop_net_address { - u_int32_t network __attribute__((packed)); + u_int32_t network; #ifdef SWIG fixedArray node[IPX_NODE_LEN]; #else - u_int8_t node[IPX_NODE_LEN] __attribute__((packed)); + u_int8_t node[IPX_NODE_LEN]; #endif - u_int16_t port __attribute__((packed)); -}; + u_int16_t port; +} __attribute__((packed)); struct ncp_filesearch_info { u_int8_t volume_number; u_int16_t directory_id; u_int16_t sequence_no; u_int8_t access_rights; -}; +} __attribute__((packed)); #define NCP_MAX_FILENAME (14) struct ncp_file_info { @@ -127,28 +127,28 @@ struct ncp_file_info { #ifdef SWIG struct nw_queue_job_entry { - u_int16_t InUse __attribute__((packed)); - u_int32_t prev __attribute__((packed)); - u_int32_t next __attribute__((packed)); - u_int32_t ClientStation __attribute__((packed)); - u_int32_t ClientTask __attribute__((packed)); - u_int32_t ClientObjectID __attribute__((packed)); - u_int32_t TargetServerID __attribute__((packed)); - fixedArray TargetExecTime[6] __attribute__((packed)); - fixedArray JobEntryTime[6] __attribute__((packed)); - u_int32_t JobNumber __attribute__((packed)); - u_int16_t JobType __attribute__((packed)); - u_int16_t JobPosition __attribute__((packed)); - u_int16_t JobControlFlags __attribute__((packed)); - u_int8_t FileNameLen __attribute__((packed)); - byteLenPrefixCharArray JobFileName[13] __attribute__((packed)); - u_int32_t JobFileHandle __attribute__((packed)); - u_int32_t ServerStation __attribute__((packed)); - u_int32_t ServerTaskNumber __attribute__((packed)); - u_int32_t ServerObjectID __attribute__((packed)); - fixedCharArray JobTextDescription[50] __attribute__((packed)); - fixedArray ClientRecordArea[152] __attribute__((packed)); -}; + u_int16_t InUse; + u_int32_t prev; + u_int32_t next; + u_int32_t ClientStation; + u_int32_t ClientTask; + u_int32_t ClientObjectID; + u_int32_t TargetServerID; + fixedArray TargetExecTime[6]; + fixedArray JobEntryTime[6]; + u_int32_t JobNumber; + u_int16_t JobType; + u_int16_t JobPosition; + u_int16_t JobControlFlags; + u_int8_t FileNameLen; + byteLenPrefixCharArray JobFileName[13]; + u_int32_t JobFileHandle; + u_int32_t ServerStation; + u_int32_t ServerTaskNumber; + u_int32_t ServerObjectID; + fixedCharArray JobTextDescription[50]; + fixedArray ClientRecordArea[152]; +} __attribute__((packed)); struct queue_job { struct nw_queue_job_entry j; @@ -156,28 +156,28 @@ struct queue_job { }; #else struct nw_queue_job_entry { - u_int16_t InUse __attribute__((packed)); - u_int32_t prev __attribute__((packed)); - u_int32_t next __attribute__((packed)); - u_int32_t ClientStation __attribute__((packed)); - u_int32_t ClientTask __attribute__((packed)); - u_int32_t ClientObjectID __attribute__((packed)); - u_int32_t TargetServerID __attribute__((packed)); - u_int8_t TargetExecTime[6] __attribute__((packed)); - u_int8_t JobEntryTime[6] __attribute__((packed)); - u_int32_t JobNumber __attribute__((packed)); - u_int16_t JobType __attribute__((packed)); - u_int16_t JobPosition __attribute__((packed)); - u_int16_t JobControlFlags __attribute__((packed)); - u_int8_t FileNameLen __attribute__((packed)); - char JobFileName[13] __attribute__((packed)); - u_int32_t JobFileHandle __attribute__((packed)); - u_int32_t ServerStation __attribute__((packed)); - u_int32_t ServerTaskNumber __attribute__((packed)); - u_int32_t ServerObjectID __attribute__((packed)); - char JobTextDescription[50] __attribute__((packed)); - char ClientRecordArea[152] __attribute__((packed)); -}; + u_int16_t InUse; + u_int32_t prev; + u_int32_t next; + u_int32_t ClientStation; + u_int32_t ClientTask; + u_int32_t ClientObjectID; + u_int32_t TargetServerID; + u_int8_t TargetExecTime[6]; + u_int8_t JobEntryTime[6]; + u_int32_t JobNumber; + u_int16_t JobType; + u_int16_t JobPosition; + u_int16_t JobControlFlags; + u_int8_t FileNameLen; + char JobFileName[13]; + u_int32_t JobFileHandle; + u_int32_t ServerStation; + u_int32_t ServerTaskNumber; + u_int32_t ServerObjectID; + char JobTextDescription[50]; + char ClientRecordArea[152]; +} __attribute__((packed)); struct queue_job { struct nw_queue_job_entry j; @@ -202,34 +202,34 @@ struct queue_job { #ifdef SWIG struct print_job_record { - u_int8_t Version __attribute__((packed)); - u_int8_t TabSize __attribute__((packed)); - u_int16_t Copies __attribute__((packed)); - u_int16_t CtrlFlags __attribute__((packed)); - u_int16_t Lines __attribute__((packed)); - u_int16_t Rows __attribute__((packed)); - fixedCharArray FormName[16] __attribute__((packed)); - fixedArray Reserved[6] __attribute__((packed)); - fixedCharArray BannerName[13] __attribute__((packed)); - fixedCharArray FnameBanner[13] __attribute__((packed)); - fixedCharArray FnameHeader[14] __attribute__((packed)); - fixedCharArray Path[80] __attribute__((packed)); -}; + u_int8_t Version; + u_int8_t TabSize; + u_int16_t Copies; + u_int16_t CtrlFlags; + u_int16_t Lines; + u_int16_t Rows; + fixedCharArray FormName[16]; + fixedArray Reserved[6]; + fixedCharArray BannerName[13]; + fixedCharArray FnameBanner[13]; + fixedCharArray FnameHeader[14]; + fixedCharArray Path[80]; +} __attribute__((packed)); #else struct print_job_record { - u_int8_t Version __attribute__((packed)); - u_int8_t TabSize __attribute__((packed)); - u_int16_t Copies __attribute__((packed)); - u_int16_t CtrlFlags __attribute__((packed)); - u_int16_t Lines __attribute__((packed)); - u_int16_t Rows __attribute__((packed)); - char FormName[16] __attribute__((packed)); - u_int8_t Reserved[6] __attribute__((packed)); - char BannerName[13] __attribute__((packed)); - char FnameBanner[13] __attribute__((packed)); - char FnameHeader[14] __attribute__((packed)); - char Path[80] __attribute__((packed)); -}; + u_int8_t Version; + u_int8_t TabSize; + u_int16_t Copies; + u_int16_t CtrlFlags; + u_int16_t Lines; + u_int16_t Rows; + char FormName[16]; + u_int8_t Reserved[6]; + char BannerName[13]; + char FnameBanner[13]; + char FnameHeader[14]; + char Path[80]; +} __attribute__((packed)); #endif #endif /* _NCP_H */ --- a/include/ncp/ncplib.h 2005-01-28 04:35:59.000000000 +1100 +++ b/include/ncp/ncplib.h 2010-03-27 15:20:07.000000000 +1100 @@ -107,7 +107,7 @@ extern "C" { /* we know that the 386 can handle misalignment and has the "right" byteorder */ -#if defined(__i386__) +#if 0 static inline word WVAL_LH(const void * buf, int pos) @@ -462,25 +462,25 @@ struct ncp_file_server_info #else struct ncp_file_server_info { - u_int8_t ServerName[48] __attribute__((packed)); - u_int8_t FileServiceVersion __attribute__((packed)); - u_int8_t FileServiceSubVersion __attribute__((packed)); - u_int16_t MaximumServiceConnections __attribute__((packed)); - u_int16_t ConnectionsInUse __attribute__((packed)); - u_int16_t NumberMountedVolumes __attribute__((packed)); - u_int8_t Revision __attribute__((packed)); - u_int8_t SFTLevel __attribute__((packed)); - u_int8_t TTSLevel __attribute__((packed)); - u_int16_t MaxConnectionsEverUsed __attribute__((packed)); - u_int8_t AccountVersion __attribute__((packed)); - u_int8_t VAPVersion __attribute__((packed)); - u_int8_t QueueVersion __attribute__((packed)); - u_int8_t PrintVersion __attribute__((packed)); - u_int8_t VirtualConsoleVersion __attribute__((packed)); - u_int8_t RestrictionLevel __attribute__((packed)); - u_int8_t InternetBridge __attribute__((packed)); - u_int8_t Reserved[60] __attribute__((packed)); -}; + u_int8_t ServerName[48]; + u_int8_t FileServiceVersion; + u_int8_t FileServiceSubVersion; + u_int16_t MaximumServiceConnections; + u_int16_t ConnectionsInUse; + u_int16_t NumberMountedVolumes; + u_int8_t Revision; + u_int8_t SFTLevel; + u_int8_t TTSLevel; + u_int16_t MaxConnectionsEverUsed; + u_int8_t AccountVersion; + u_int8_t VAPVersion; + u_int8_t QueueVersion; + u_int8_t PrintVersion; + u_int8_t VirtualConsoleVersion; + u_int8_t RestrictionLevel; + u_int8_t InternetBridge; + u_int8_t Reserved[60]; +} __attribute__((packed)); #endif struct ncp_file_server_info_2 { @@ -588,47 +588,47 @@ long struct ncp_station_addr { - u_int32_t NetWork __attribute__((packed)); + u_int32_t NetWork; #ifdef SWIG fixedArray Node[6]; #else - u_int8_t Node[6] __attribute__((packed)); + u_int8_t Node[6]; #endif - u_int16_t Socket __attribute__((packed)); -}; + u_int16_t Socket; +} __attribute__((packed)); struct ncp_prop_login_control { #ifdef SWIG fixedArray AccountExpireDate[3]; #else - u_int8_t AccountExpireDate[3] __attribute__((packed)); + u_int8_t AccountExpireDate[3]; #endif - u_int8_t Disabled __attribute__((packed)); + u_int8_t Disabled; #ifdef SWIG fixedArray PasswordExpireDate[3]; #else - u_int8_t PasswordExpireDate[3] __attribute__((packed)); + u_int8_t PasswordExpireDate[3]; #endif - u_int8_t GraceLogins __attribute__((packed)); - u_int16_t PasswordExpireInterval __attribute__((packed)); - u_int8_t MaxGraceLogins __attribute__((packed)); - u_int8_t MinPasswordLength __attribute__((packed)); - u_int16_t MaxConnections __attribute__((packed)); + u_int8_t GraceLogins; + u_int16_t PasswordExpireInterval; + u_int8_t MaxGraceLogins; + u_int8_t MinPasswordLength; + u_int16_t MaxConnections; #ifdef SWIG - fixedArray ConnectionTimeMask[42] __attribute__((packed)); - fixedArray LastLogin[6] __attribute__((packed)); + fixedArray ConnectionTimeMask[42]; + fixedArray LastLogin[6]; #else - u_int8_t ConnectionTimeMask[42] __attribute__((packed)); - u_int8_t LastLogin[6] __attribute__((packed)); + u_int8_t ConnectionTimeMask[42]; + u_int8_t LastLogin[6]; #endif - u_int8_t RestrictionMask __attribute__((packed)); - u_int8_t reserved __attribute__((packed)); - u_int32_t MaxDiskUsage __attribute__((packed)); - u_int16_t BadLoginCount __attribute__((packed)); - u_int32_t BadLoginCountDown __attribute__((packed)); - struct ncp_station_addr LastIntruder __attribute__((packed)); -}; + u_int8_t RestrictionMask; + u_int8_t reserved; + u_int32_t MaxDiskUsage; + u_int16_t BadLoginCount; + u_int32_t BadLoginCountDown; + struct ncp_station_addr LastIntruder; +} __attribute__((packed)); NWCCODE NWReadPropertyValue(NWCONN_HANDLE conn, const char *objName, NWObjectType objType, const char *propertyName, --- a/ipx-1.0/ipx_internal_net.8 2005-01-28 04:35:59.000000000 +1100 +++ b/ipx-1.0/ipx_internal_net.8 2007-09-16 21:43:16.000000000 +1000 @@ -15,6 +15,8 @@ not have a physical device or frame type a route-independent address for service providers. Internal networks are optional; however, when one is present it is also the Primary Interface. There can only be one internal network per host. +The node number defaults to 1 if a second arg is not +given to the "add" command. .SS OPTIONS .TP .I add --- a/ipx-1.0/Makefile.in 2005-01-28 04:35:59.000000000 +1100 +++ b/ipx-1.0/Makefile.in 2007-09-16 21:43:16.000000000 +1000 @@ -52,8 +52,8 @@ mrproper: clean distclean: mrproper install: $(UTILS) $(MAN8GZ) $(UTIIPX) - $(INSTALL) -d $(DESTDIR)$(bindir) - $(INSTALL) $(UTILS) $(UTIIPX) $(DESTDIR)$(bindir) + $(INSTALL) -d $(DESTDIR)$(sbindir) + $(INSTALL) $(UTILS) $(UTIIPX) $(DESTDIR)$(sbindir) $(INSTALL) -d $(DESTDIR)$(mandir)/man8 $(INSTALL_DATA) $(MAN8GZ) $(DESTDIR)$(mandir)/man8 --- a/lib/ncplib.c 2005-01-28 04:35:59.000000000 +1100 +++ b/lib/ncplib.c 2010-03-27 15:20:07.000000000 +1100 @@ -2421,7 +2421,7 @@ ncp_initialize_2(int *argc, char **argv, int i = 1; NWCCODE nwerr; - static int get_argument(int arg_no, const char **target) { + int get_argument(int arg_no, const char **target) { int count = 1; if (target != NULL) { @@ -2584,14 +2584,14 @@ ncp_request(struct ncp_conn *conn, int f struct nw_time_buffer { - u_int8_t year __attribute__((packed)); - u_int8_t month __attribute__((packed)); - u_int8_t day __attribute__((packed)); - u_int8_t hour __attribute__((packed)); - u_int8_t minute __attribute__((packed)); - u_int8_t second __attribute__((packed)); - u_int8_t wday __attribute__((packed)); -}; + u_int8_t year; + u_int8_t month; + u_int8_t day; + u_int8_t hour; + u_int8_t minute; + u_int8_t second; + u_int8_t wday; +} __attribute__((packed)); static time_t nw_to_ctime(struct nw_time_buffer *source) --- a/lib/ndslib.c 2005-01-28 04:35:59.000000000 +1100 +++ b/lib/ndslib.c 2010-03-27 15:18:45.000000000 +1100 @@ -49,7 +49,7 @@ #define RANDBUF /* if defined: read random data once from /dev/urandom */ /*#define ERR_MSG*/ /* if defined: show error messages in nds_login_auth */ /*#define DEBUG_PRINT*/ -/*#define FIND_ISR */ /* if defined: show reasons for -330 invalid response */ +#define FIND_ISR /* if defined: show reasons for -330 invalid response */ #define NCP_OBSOLETE --- a/man/Makefile.in 2005-01-28 04:35:59.000000000 +1100 +++ b/man/Makefile.in 2010-03-27 15:18:45.000000000 +1100 @@ -15,7 +15,7 @@ MOUNT2 = @MOUNT2@ MAN1 := nprint.1 nsend.1 nwauth.1 nwbols.1 nwboprops.1 nwbpset.1 \ nwbpvalues.1 nwdir.1 nwfsinfo.1 nwfstime.1 nwpasswd.1 nwpurge.1 \ - nwrights.1 nwsfind.1 nwtrustee.1 nwuserlist.1 nwvolinfo.1 pqlist.1 \ + nwrights.1 nwsfind.1 nwtrustee.1 nwtrustee2.1 nwuserlist.1 nwvolinfo.1 pqlist.1 \ nwpqjob.1 pqstat.1 pserver.1 slist.1 nwpjmv.1 MAN3 := $(notdir $(wildcard ${this_srcdir}/*.3ncp)) MAN5 := nwclient.5 @@ -47,6 +47,7 @@ install: all ln -sf nwpqjob.1.gz $(DESTDIR)$(mandir)/man1/pqrm.1.gz ifeq ($(USE_KERNEL),1) ln -sf ncpmount.8.gz $(DESTDIR)$(mandir)/man8/mount.ncp.8.gz + ln -sf ncpmount.8.gz $(DESTDIR)$(mandir)/man8/mount.ncpfs.8.gz endif install-dev: all --- a/man/ncpmount.8 2005-01-28 04:35:59.000000000 +1100 +++ b/man/ncpmount.8 2007-09-16 21:43:16.000000000 +1000 @@ -282,7 +282,7 @@ is done by commercial workstations, plea You can specify character translation rules for converting names from unicode to your desktop (it works together with \fB-p\fP). .I iocharset -is charset name, for example \fIiso-8859-1\fP. +is charset name, for example \fIiso8859-1\fP. .RE .B -p --- a/man/nwbpset.1 2005-01-28 04:35:59.000000000 +1100 +++ b/man/nwbpset.1 2010-03-27 15:18:45.000000000 +1100 @@ -26,7 +26,7 @@ Reads a property specification from the sets the corresponding property. The format is determined by the output of 'nwbpvalues -c'. nwbpset will hopefully become an important part of the bindery management suite of ncpfs, together with -'nwbpvalues -c'. See util/nwbpsecurity for an example. +\'nwbpvalues -c\'. See util/nwbpsecurity for an example. As another example, look at the following command line: --- a/man/nwbpvalues.1 2005-01-28 04:35:59.000000000 +1100 +++ b/man/nwbpvalues.1 2007-09-16 21:43:16.000000000 +1000 @@ -1,4 +1,4 @@ -.TH NWBPVALUES 8 7/9/1996 nwbpvalues nwbpvalues +.TH NWBPVALUES 1 7/9/1996 nwbpvalues nwbpvalues .SH NAME nwbpvalues \- Print a NetWare Bindery Propery's contents .SH SYNOPSIS --- a/man/nwfsctrl.8 2005-01-28 04:35:59.000000000 +1100 +++ b/man/nwfsctrl.8 2007-09-16 21:43:16.000000000 +1000 @@ -1,4 +1,4 @@ -.TH NWFSCTRL 1 2/12/1999 nwfsctrl nwfsctrl +.TH NWFSCTRL 8 2/12/1999 nwfsctrl nwfsctrl .SH NAME nwfsctrl \- Perform server command .SH SYNOPSIS --- a/man/nwtrustee.1 2005-01-28 04:35:59.000000000 +1100 +++ b/man/nwtrustee.1 2007-09-16 21:43:16.000000000 +1000 @@ -1,4 +1,4 @@ -.TH NWTRUSTEE 8 7/9/1996 nwtrustee nwtrustee +.TH NWTRUSTEE 1 7/9/1996 nwtrustee nwtrustee .SH NAME nwtrustee \- List an object's trustee directory assignments .SH SYNOPSIS --- a/man/nwtrustee2.1 1970-01-01 10:00:00.000000000 +1000 +++ b/man/nwtrustee2.1 2007-09-16 21:43:16.000000000 +1000 @@ -0,0 +1,52 @@ +.TH NWTRUSTEE2 1 10/16/2005 nwtrustee2 nwtrustee2 +.SH NAME +nwtrustee2 \- Lists trustees and permissions of a ncp directory +.SH SYNOPSIS +.B nwtrustee2 +[ +.B -h +] [ +.B -? +] [ +.B -v +] [ +.I directory +] + +.SH DESCRIPTION +.B nwtrustee2 +lists the permissions assigned to any trustees for a given ncp directory. It +does not show the inherited permissions, but only the ones directly assigned to +it. + +The letters used to express the permissions are explained in the +\fInwgrant\fP(1) manpage. + +The \fIdirectory\fP has to belong to a volume mounted with \fIncpmount\fP or +mount.ncp, if omited the current directory is used. + +.SH OPTIONS + +.B -h +or +.B -? +.RS 3 +.B -h +or +.B -? +prints a short help text. +.RE + +.B -v +.RS 3 +Verbose mode. Prints the directory name before procesing. +.RE + +.SH SEE ALSO + +\fInwtrustee\fP(1), \fInwgrant\fP(1), \fInwrevoke\fP(1), \fInwrights\fP(1) + + +.SH AUTHORS +nwtrustee2 was written by Petr Vandrovec . +This manual page was written by Maximiliano Curia . --- a/man/nwvolinfo.1 2005-01-28 04:35:59.000000000 +1100 +++ b/man/nwvolinfo.1 2007-09-16 21:43:16.000000000 +1000 @@ -1,4 +1,4 @@ -.TH NWVOLINFO 8 7/9/1996 nwvolinfo nwvolinfo +.TH NWVOLINFO 1 7/9/1996 nwvolinfo nwvolinfo .SH NAME nwvolinfo \- Diplay info on NetWare Volumes .SH SYNOPSIS @@ -97,4 +97,4 @@ Display the information in numeric-only .SH AUTHORS nwvolinfo was written by Jacek Stepniewski based on -utilities by Volker Lendecke. \ No newline at end of file +utilities by Volker Lendecke. Binary files ncpfs-2.2.6/po/de.gmo and b/po/de.gmo differ --- a/po/de.po 2005-01-28 04:35:59.000000000 +1100 +++ b/po/de.po 2007-09-16 21:43:16.000000000 +1000 @@ -216,7 +216,7 @@ msgstr "%s: Ungültiger Routerknoten %s\ #: ipx-1.0/ipx_route.c:98 #, c-format msgid "%s: Node (%s) is invalid.\n" -msgstr "%s: Knoten (%s) is ungültig.\n" +msgstr "%s: Knoten (%s) ist ungültig.\n" #: ipx-1.0/ipx_route.c:124 #, c-format @@ -1426,7 +1426,7 @@ msgstr "Kann Verbindung zu Kontext nicht #: sutil/ncplogin.c:920 #, c-format msgid "Cannot authenticate connection: %s\n" -msgstr "Kann Vebindung nicht authentifizieren: %s\n" +msgstr "Kann Verbindung nicht authentifizieren: %s\n" #: sutil/ncplogin.c:939 #, c-format @@ -1789,7 +1789,7 @@ msgstr "bind(wdog_sock, ): %s\n" #: sutil/ncpm_common.c:1791 #, c-format msgid "Could not open message socket: %s\n" -msgstr "Konte Socket für Nachrichten nicht öffnen: %s\n" +msgstr "Konnte Socket für Nachrichten nicht öffnen: %s\n" #: sutil/ncpm_common.c:1799 #, c-format @@ -1904,7 +1904,7 @@ msgid "" "\n" msgstr "" "\n" -"-v Detailierte Ausgabe\n" +"-v Detaillierte Ausgabe\n" "-i interface Zu testendes Interface, Standard: eth0\n" "-t timeout Wartezeit auf Antwort in Sekunden, Standard: 3\n" "-h Zeigt diesen Hilfetext an\n" @@ -2782,7 +2782,7 @@ msgstr "" "\n" "-t type Typ der aufzulistenden Objekte (Dezimalwert)\n" "-o object Maske für aufzulistenden Objekte\n" -"-v Detailierte Auflistung\n" +"-v Detaillierte Auflistung\n" "-a Alternatives Ausgabeformat\n" "-d Objekttyp dezimal anzeigen\n" "\n" @@ -2818,7 +2818,7 @@ msgstr "" "\n" "-o object_name Name des zu überprüfenden Objekts\n" "-t type Objekttyp (Dezimalwert)\n" -"-v Detailierte Auflistung\n" +"-v Detaillierte Auflistung\n" "\n" #: util/nwborm.c:47 @@ -3129,7 +3129,7 @@ msgstr "" "-o object_name Objektname\n" "-t type Objekttyp (Dezimalwert)\n" "-p property Name der zu listenden Eigenschaft\n" -"-v Detailierte Auflistung\n" +"-v Detaillierte Auflistung\n" "-c Kanonische Ausgabe, für die Verwendung mit nwbpadd\n" "\n" @@ -3629,7 +3629,7 @@ msgstr "" " über dessen Inhalt\n" " -l Listet Namespace Informationen\n" " -e Listet erweiterte Attributinformationen\n" -" -v Detailiertes Auflistung\n" +" -v Detailliertes Auflistung\n" " -f Listet die Datei nutzende Verbindungen\n" " -p List physikalische Sperren dieser Datei\n" " -t Technisch - zeigt Werte und ihre Bedeutung\n" @@ -4532,7 +4532,7 @@ msgstr "" "-O objectid Objekt-ID\n" "-o objname Objektname (Typ muß angegeben werden)\n" "-t type Objekttyp\n" -"-v Detailierte Auflistung\n" +"-v Detaillierte Auflistung\n" "\n" #: util/nwtrustee2.c:45 @@ -4559,7 +4559,7 @@ msgid "" "\n" msgstr "" "\n" -"-v Detailiert\n" +"-v Detailliert\n" "\n" "Datei- / Verzeichnisliste, die nach Trustees abgesucht wird\n" "\n" --- a/sutil/Makefile.in 2005-01-28 04:35:59.000000000 +1100 +++ b/sutil/Makefile.in 2007-09-16 21:43:16.000000000 +1000 @@ -53,8 +53,8 @@ install: all ${INSTALL} -d $(DESTDIR)/sbin ${INSTALL} -m 4755 $(UTILS) $(DESTDIR)$(bindir) ifeq ($(USE_KERNEL),1) - ln -sf ..$(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncp - ln -sf ..$(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncpfs + ln -sf $(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncp + ln -sf $(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncpfs ln -sf ncpumount $(DESTDIR)$(bindir)/ncplogout endif --- a/sutil/ncpm_common.c 2005-01-28 04:35:59.000000000 +1100 +++ b/sutil/ncpm_common.c 2007-09-16 21:44:54.000000000 +1000 @@ -85,6 +85,7 @@ #include #include #include +#include #include #include #include --- a/util/Makefile.in 2005-01-28 04:35:59.000000000 +1100 +++ b/util/Makefile.in 2007-09-16 21:43:16.000000000 +1000 @@ -70,7 +70,7 @@ ifneq ($(SBINUTILS),) endif ifeq ($(USE_KERNEL)$(MOUNT2),11) ifneq ($(sbindir),/sbin) - ln -sf ..$(sbindir)/nwmsg $(DESTDIR)/sbin/nwmsg + ln -sf $(sbindir)/nwmsg $(DESTDIR)/sbin/nwmsg endif endif --- a/util/nwpjmv.c 2005-01-28 04:35:59.000000000 +1100 +++ b/util/nwpjmv.c 2007-09-16 21:43:16.000000000 +1000 @@ -131,7 +131,7 @@ build_command(struct nw_queue *q, struct char *s = q->command; char *target_end = target + target_size; - static void add_string(const char *str) + void add_string(const char *str) { int len = strlen(str); if (target + len + 1 > target_end) --- a/util/pserver.c 2005-01-28 04:35:59.000000000 +1100 +++ b/util/pserver.c 2007-09-16 21:43:16.000000000 +1000 @@ -153,7 +153,7 @@ build_command(struct nw_queue *q, struct char *s = q->command; char *target_end = target + target_size; - static void add_string(const char *str) + void add_string(const char *str) { int len = strlen(str); if (target + len + 1 > target_end)