From 64f006632a4485c1d62cdca440244726856559df Mon Sep 17 00:00:00 2001 From: ncpfs archive import Date: Tue, 28 Apr 2026 20:39:58 +0200 Subject: [PATCH] Import ncpfs 0.22 --- .downloads/ncpfs-0.22.tgz | Bin 0 -> 120769 bytes Changes | 6 + FAQ | 12 ++ Makefile | 33 +++--- README | 7 +- ipxdump/ipxdump | Bin 0 -> 7604 bytes ipxdump/ipxdump.c | 2 +- ipxdump/ipxparse | Bin 0 -> 10891 bytes kernel-1.2/linux/ncp_fs.h | 2 +- kernel-1.2/src/dir.c | 78 +++++++++---- kernel-1.2/src/inode.c | 2 +- kernel-1.2/src/sock.c | 20 +++- ncpfs-0.21.lsm => ncpfs-0.22.lsm | 12 +- util/Makefile | 3 + util/ncplib.c | 195 +++++++++++++++++++++++++++++++ util/ncplib.h | 57 +++++++++ util/ncplib_err.et | 6 + 17 files changed, 374 insertions(+), 61 deletions(-) create mode 100644 .downloads/ncpfs-0.22.tgz create mode 100755 ipxdump/ipxdump create mode 100755 ipxdump/ipxparse rename ncpfs-0.21.lsm => ncpfs-0.22.lsm (73%) diff --git a/.downloads/ncpfs-0.22.tgz b/.downloads/ncpfs-0.22.tgz new file mode 100644 index 0000000000000000000000000000000000000000..c9eb687bcbb38ec6dfb2ab4e3532f74754296972 GIT binary patch literal 120769 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%0D;{U1aR2Tj~lK&ji{om8$ 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 SE_M0;EdK)?KS+20AP4|Zo?k)$ literal 0 HcmV?d00001 diff --git a/Changes b/Changes index 8704372..3088516 100644 --- a/Changes +++ b/Changes @@ -1,6 +1,12 @@ I only began this file with ncpfs-0.12. If you're interested in older versions, you can find them on ftp.gwdg.de:/pub/linux/misc/ncpfs/old. +ncpfs-0.21 -> ncpfs-0.22 +- removed a bad race condition in kernel-1.2/src/dir.c. +- handle 0x9999-responses from the ncp server correctly. +- Bindery functions in ncplib.c by Brian G. Reid (breid@tim.com) +- set blocksize to 512 to satisfy 'du -k' + ncpfs-0.20 -> ncpfs-0.21 - Included two bugfixes in ncplib.c found by Jeff Buhrt . diff --git a/FAQ b/FAQ index 0cd53d4..5c7c4db 100644 --- a/FAQ +++ b/FAQ @@ -4,6 +4,18 @@ enough. ------------------------------------------------------------------------------- +Q: I have difficulties with NetWare 4.1. What can I do? + +To be honest, I do not really know. Currently my only test equipment +is a NetWare 3.11 server. You should make your 4.1 Server as +3.x-compatible as it can be. As I do not know 4.1, you are on your own +doing this. + +A promising hint that has already helped some people is to switch off +packet signatures on the 4.1 server, as ncpfs does not support them. + +------------------------------------------------------------------------------- + Q: Does ncpfs support long file names, using the OS/2 namespace? No. Not yet. I still have to sort out how that really works. But it should diff --git a/Makefile b/Makefile index f0d93f6..1868f1e 100644 --- a/Makefile +++ b/Makefile @@ -2,31 +2,29 @@ # Makefile for the linux ncp-filesystem routines. # -VERSION = 0.21 -TOPDIR = $(shell pwd) - -BINDIR = /usr/local/bin -SBINDIR = /sbin -INTERM_BINDIR = $(TOPDIR)/bin -SUBDIRS = util ipx-1.0 man - -# -# The following 2 lines are for those who use Kernel version 1.2.x. -# If you have a kernel later than 1.3.53, please comment out the -# the following lines. You have to recompile your kernel -# and say 'y' when 'make config' asks you for IPX and ncpfs. -# -SUBDIRS += kernel-1.2/src -INCLUDES = -I$(TOPDIR)/kernel-1.2 +VERSION = 0.22 # If you are using kerneld to autoload ncp support, # uncomment this (kerneld is in linux since about 1.3.57): #KERNELD = -DHAVE_KERNELD +TOPDIR = $(shell pwd) +BINDIR = /usr/local/bin +SBINDIR = /sbin +INTERM_BINDIR = $(TOPDIR)/bin +SUBDIRS = util ipx-1.0 man + +KVERSION=$(shell uname -r | cut -b3) + +ifeq ($(KVERSION),2) +SUBDIRS += kernel-1.2/src +INCLUDES = -I$(TOPDIR)/kernel-1.2 +endif + export INCLUDES BINDIR INTERM_BINDIR SBINDIR KERNELD VERSION all: - for i in $(SUBDIRS); do make -C $$i; done + for i in $(SUBDIRS); do make -C $$i all; done dep: for i in $(SUBDIRS); do make -C $$i dep; done @@ -44,6 +42,7 @@ clean: mrproper: clean rm -fr $(INTERM_BINDIR)/* ncpfs.tgz make -C util mrproper + (cd ncpd; make clean) modules: ncpfs.o diff --git a/README b/README index c8eab2a..971d622 100644 --- a/README +++ b/README @@ -22,11 +22,8 @@ asks for ncpfs. After you have rebooted with the new kernel, 'cat /proc/filesystems' should show you a line saying that the kernel knows ncpfs. -With Kernel 1.3.71 or later you also have to modify the Makefile in the -directory you found this README in. Please see the Makefile for the -necessary modifications. Then typing 'make' should work with no -problem. - +If you are running kerneld, please uncomment the corresponding line in +the Makefile to reflect this. HELP diff --git a/ipxdump/ipxdump b/ipxdump/ipxdump new file mode 100755 index 0000000000000000000000000000000000000000..b6c3cbbe14bf50e2591f85c829b41f7ffe4aa8ed GIT binary patch literal 7604 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 literal 0 HcmV?d00001 diff --git a/ipxdump/ipxdump.c b/ipxdump/ipxdump.c index 4fd3605..105c5ae 100644 --- a/ipxdump/ipxdump.c +++ b/ipxdump/ipxdump.c @@ -236,7 +236,7 @@ handle_frame (unsigned char *buf, int length, struct sockaddr *saddr) switch( packet_type ) { case __constant_ntohs(ETH_P_IPX): - handle_ipx("EtherII ", &(buf[sizeof(struct ethhdr)])); + handle_ipx("EtherII", &(buf[sizeof(struct ethhdr)])); break; default: handle_other(buf, length, saddr); diff --git a/ipxdump/ipxparse b/ipxdump/ipxparse new file mode 100755 index 0000000000000000000000000000000000000000..f98b1467b4aeb59ce404b269d0730df92d1cda9a GIT binary patch literal 10891 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, ncp_info_ino(server, dir)) < 0) { - return 0; + goto finished; } filp->f_pos += 1; - return ROUND_UP(NAME_OFFSET(dirent)+i+1); + result = ROUND_UP(NAME_OFFSET(dirent)+i+1); + goto finished; } if (filp->f_pos == 1) @@ -266,10 +287,11 @@ ncp_readdir(struct inode *inode, struct file *filp, if (filldir(dirent,"..",2, filp->f_pos, ncp_info_ino(server, dir->dir)) < 0) { - return 0; + goto finished; } filp->f_pos += 1; - return ROUND_UP(NAME_OFFSET(dirent)+i+1); + result = ROUND_UP(NAME_OFFSET(dirent)+i+1); + goto finished; } if ((inode->i_dev == c_dev) && (inode->i_ino == c_ino)) @@ -286,42 +308,44 @@ ncp_readdir(struct inode *inode, struct file *filp, } if ((entry == NULL) && c_seen_eof) { - return 0; + goto finished; } } if (entry == NULL) { + int entries; DDPRINTK("ncp_readdir: Not found in cache.\n"); if (ncp_is_server_root(inode)) { - result = ncp_read_volume_list(server, filp->f_pos, - NCP_READDIR_CACHE_SIZE); - DPRINTK("ncp_read_volume_list returned %d\n", result); + entries = ncp_read_volume_list(server, filp->f_pos, + NCP_READDIR_CACHE_SIZE); + DPRINTK("ncp_read_volume_list returned %d\n", entries); } else { - result = ncp_do_readdir(server, inode, filp->f_pos, - NCP_READDIR_CACHE_SIZE, - c_entry); - DPRINTK("ncp_readdir returned %d\n", result); + entries = ncp_do_readdir(server, inode, filp->f_pos, + NCP_READDIR_CACHE_SIZE, + c_entry); + DPRINTK("ncp_readdir returned %d\n", entries); } - if (result < 0) + if (entries < 0) { c_dev = 0; c_ino = 0; - return result; + result = entries; + goto finished; } - if (result > 0) + if (entries > 0) { - c_seen_eof = (result < NCP_READDIR_CACHE_SIZE); + c_seen_eof = (entries < NCP_READDIR_CACHE_SIZE); c_dev = inode->i_dev; c_ino = inode->i_ino; - c_size = result; + c_size = entries; entry = c_entry; c_last_returned_index = 0; index = 0; @@ -336,7 +360,7 @@ ncp_readdir(struct inode *inode, struct file *filp, if (entry == NULL) { /* Nothing found, even from a ncp call */ - return 0; + goto finished; } if (index < c_size) @@ -374,15 +398,18 @@ ncp_readdir(struct inode *inode, struct file *filp, if (filldir(dirent, entry->i.entryName, entry->i.nameLen, entry->f_pos, ino) < 0) { - return 0; + goto finished; } filp->f_pos += 1; index += 1; entry += 1; - return ROUND_UP(NAME_OFFSET(dirent)+i+1); + result = ROUND_UP(NAME_OFFSET(dirent)+i+1); + goto finished; } - return 0; + finished: + ncp_unlock_dircache(); + return result; } static int @@ -828,7 +855,9 @@ ncp_lookup(struct inode *dir, const char *__name, int len, server. */ found_in_cache = 0; - + + ncp_lock_dircache(); + if ((dir->i_dev == c_dev) && (dir->i_ino == c_ino)) { int first = c_last_returned_index; @@ -851,6 +880,7 @@ ncp_lookup(struct inode *dir, const char *__name, int len, } while (i != first); } + ncp_unlock_dircache(); if (found_in_cache == 0) { diff --git a/kernel-1.2/src/inode.c b/kernel-1.2/src/inode.c index 0add779..4ebaa49 100644 --- a/kernel-1.2/src/inode.c +++ b/kernel-1.2/src/inode.c @@ -94,7 +94,7 @@ ncp_read_inode(struct inode *inode) inode->i_nlink = 1; inode->i_uid = NCP_SERVER(inode)->m.uid; inode->i_gid = NCP_SERVER(inode)->m.gid; - inode->i_blksize = 1024; + inode->i_blksize = 512; inode->i_rdev = 0; if ((inode->i_blksize != 0) && (inode->i_size != 0)) diff --git a/kernel-1.2/src/sock.c b/kernel-1.2/src/sock.c index e5faf13..12e2a51 100644 --- a/kernel-1.2/src/sock.c +++ b/kernel-1.2/src/sock.c @@ -222,6 +222,7 @@ do_ncp_rpc_call(struct ncp_server *server, int size) int timeout; int retrans; int major_timeout_seen; + int acknowledge_seen; int n; int addrlen; unsigned long old_mask; @@ -243,7 +244,8 @@ do_ncp_rpc_call(struct ncp_server *server, int size) return -EBADF; } init_timeout = server->m.time_out; - max_timeout = NCP_MAX_RPC_TIMEOUT*HZ/10; + max_timeout = NCP_MAX_RPC_TIMEOUT; + acknowledge_seen = 0; retrans = server->m.retry_count; major_timeout_seen = 0; old_mask = current->blocked; @@ -296,11 +298,14 @@ do_ncp_rpc_call(struct ncp_server *server, int size) { if (timeout > max_timeout) { - /* JEJB/JSP 2/7/94 - * This is useful to see if the system is - * hanging */ - printk("NCP max timeout reached\n"); - timeout = max_timeout; + /* JEJB/JSP 2/7/94 + * This is useful to see if the system is + * hanging */ + if (acknowledge_seen == 0) + { + printk("NCP max timeout reached\n"); + } + timeout = max_timeout; } current->timeout = jiffies + timeout; schedule(); @@ -373,6 +378,9 @@ do_ncp_rpc_call(struct ncp_server *server, int size) sock->ops->recvfrom(sock, (void *)&reply, sizeof(reply), 1, 0, NULL, &addrlen); + n = 0; + timeout = max_timeout; + acknowledge_seen = 1; goto re_select; } diff --git a/ncpfs-0.21.lsm b/ncpfs-0.22.lsm similarity index 73% rename from ncpfs-0.21.lsm rename to ncpfs-0.22.lsm index 94d74a5..0cf7a46 100644 --- a/ncpfs-0.21.lsm +++ b/ncpfs-0.22.lsm @@ -1,19 +1,19 @@ Begin3 Title: ncpfs -Version: 0.21 -Entered-date: 26. March 1996 +Version: 0.22 +Entered-date: 17. April 1996 Description: With ncpfs you can mount volumes of your netware server under Linux. You can also print to netware print queues and spool netware print queues to the Linux printing system. You need kernel 1.2.x or - 1.3.54 and above. ncpfs does NOT work with any 1.3.x - kernel below 1.3.54. + 1.3.71 and above. ncpfs does NOT work with any 1.3.x + kernel below 1.3.71. Keywords: filesystem ncp novell netware printing Author: lendecke@namu01.gwdg.de (Volker Lendecke) Maintained-by: lendecke@namu01.gwdg.de (Volker Lendecke) Primary-site: ftp.gwdg.de:/pub/linux/misc/ncpfs Alternate-site: sunsite.unc.edu:/pub/system/Filesystems/ - ~111k ncpfs-0.21.tgz - ~ 1k ncpfs-0.21.lsm + ~120k ncpfs-0.22.tgz + ~ 1k ncpfs-0.22.lsm Copying-policy: GPL End diff --git a/util/Makefile b/util/Makefile index 4c856b7..2202269 100644 --- a/util/Makefile +++ b/util/Makefile @@ -13,6 +13,9 @@ UTILS = $(addprefix $(INTERM_BINDIR)/,$(UTIL_EXECS)) CFLAGS = -Wall $(INCLUDES) $(KERNELD) -O2 -DNCPFS_VERSION=\"$(VERSION)\" CC = gcc +default: + make -C .. + all: $(UTILS) ncptest install: all diff --git a/util/ncplib.c b/util/ncplib.c index 9bb6ea0..6fe2982 100644 --- a/util/ncplib.c +++ b/util/ncplib.c @@ -1878,6 +1878,27 @@ ncp_get_bindery_object_id(struct ncp_conn *conn, return 0; } +long +ncp_get_bindery_object_name(struct ncp_conn *conn, + __u32 object_id, + struct ncp_bindery_object *target) +{ + long result; + ncp_init_request_s(conn, 54); + ncp_add_dword(conn, htonl(object_id)); + + if ((result = ncp_request(conn, 23)) != 0) { + ncp_unlock_conn(conn); + return result; + } + + target->object_id = ntohl(ncp_reply_dword(conn, 0)); + target->object_type = ntohs(ncp_reply_word (conn, 4)); + memcpy(target->object_name, ncp_reply_data(conn, 6), 48); + ncp_unlock_conn(conn); + return 0; +} + long ncp_scan_bindery_object(struct ncp_conn *conn, __u32 last_id, __u16 object_type, char *search_string, @@ -1906,6 +1927,37 @@ ncp_scan_bindery_object(struct ncp_conn *conn, return 0; } +long +ncp_create_bindery_object(struct ncp_conn *conn, + struct ncp_bindery_object *source) +{ + long result; + ncp_init_request_s(conn, 50); + ncp_add_byte(conn, source->object_flags); + ncp_add_byte(conn, source->object_security); + ncp_add_word(conn, htons(source->object_type)); + ncp_add_pstring(conn, source->object_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + + +long +ncp_delete_bindery_object(struct ncp_conn *conn, + __u16 object_type, + const char *object_name) +{ + long result; + ncp_init_request_s(conn, 51); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} long ncp_read_property_value(struct ncp_conn *conn, @@ -1932,6 +1984,149 @@ ncp_read_property_value(struct ncp_conn *conn, return 0; } + +long +ncp_scan_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + __u32 last_id, char *search_string, + struct ncp_property_info *property_info) +{ + long result; + ncp_init_request_s(conn, 60); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_dword(conn, htonl(last_id)); + ncp_add_pstring(conn, search_string); + + if ((result = ncp_request(conn, 23)) != 0) { + ncp_unlock_conn(conn); + return result; + } + + memcpy(property_info->property_name,ncp_reply_data(conn, 0), 16); + property_info->property_flags = ncp_reply_byte(conn,16); + property_info->property_security = ncp_reply_byte(conn,17); + property_info->search_instance = ntohl(ncp_reply_dword(conn,18)); + property_info->value_available_flag = ncp_reply_byte(conn,22); + property_info->more_properties_flag = ncp_reply_byte(conn,23); + ncp_unlock_conn(conn); + return 0; +} + +long +ncp_add_object_to_set(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u16 member_type, + const char *member_name) +{ + long result; + ncp_init_request_s(conn, 65); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_pstring(conn, property_name); + ncp_add_word(conn, htons(member_type)); + ncp_add_pstring(conn, member_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + +long +ncp_change_property_security(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 property_security) +{ + long result; + ncp_init_request_s(conn, 59); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_byte(conn, property_security); + ncp_add_pstring(conn, property_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + +long +ncp_create_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 property_flags, __u8 property_security) +{ + long result; + ncp_init_request_s(conn, 57); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_byte(conn, property_flags); + ncp_add_byte(conn, property_security); + ncp_add_pstring(conn, property_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + +long +ncp_delete_object_from_set(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u16 member_type, + const char *member_name) +{ + long result; + ncp_init_request_s(conn, 66); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_pstring(conn, property_name); + ncp_add_word(conn, htons(member_type)); + ncp_add_pstring(conn, member_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + +long +ncp_delete_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name) +{ + long result; + ncp_init_request_s(conn, 58); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_pstring(conn, property_name); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + +long +ncp_write_property_value(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 segment, + struct nw_property *property_value) +{ + long result; + ncp_init_request_s(conn, 62); + ncp_add_word(conn, htons(object_type)); + ncp_add_pstring(conn, object_name); + ncp_add_byte(conn,segment); + ncp_add_byte(conn, property_value->more_flag); + ncp_add_pstring(conn, property_name); + ncp_add_mem(conn, property_value->value, 128); + + result = ncp_request(conn, 23); + ncp_unlock_conn(conn); + return result; +} + long ncp_login_encrypted(struct ncp_conn *conn, const struct ncp_bindery_object *object, diff --git a/util/ncplib.h b/util/ncplib.h index 7a3633d..51f81ce 100644 --- a/util/ncplib.h +++ b/util/ncplib.h @@ -79,6 +79,15 @@ struct ncp_search_seq { int namespace; }; +struct ncp_property_info { + __u8 property_name[16]; + __u8 property_flags; + __u8 property_security; + __u32 search_instance; + __u8 value_available_flag; + __u8 more_properties_flag; +}; + /* ncp_initialize is the main entry point for user programs which want to connect to a NetWare Server. It looks for -S, -U, -P and -n in the argument list, opens the connection and removes the arguments @@ -165,9 +174,20 @@ ncp_get_bindery_object_id(struct ncp_conn *conn, const char *object_name, struct ncp_bindery_object *target); long +ncp_get_bindery_object_name(struct ncp_conn *conn, + __u32 object_id, + struct ncp_bindery_object *target); +long ncp_scan_bindery_object(struct ncp_conn *conn, __u32 last_id, __u16 object_type, char *search_string, struct ncp_bindery_object *target); +long +ncp_create_bindery_object(struct ncp_conn *conn, + struct ncp_bindery_object *source); +long +ncp_delete_bindery_object(struct ncp_conn *conn, + __u16 object_type, + const char *object_name); struct ncp_prop_login_control { __u8 AccountExpireDate[3] __attribute__ ((packed)); @@ -194,6 +214,43 @@ ncp_read_property_value(struct ncp_conn *conn, int segment, const char *prop_name, struct nw_property *target); long +ncp_scan_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + __u32 last_id, char *search_string, + struct ncp_property_info *property_info); +long +ncp_add_object_to_set(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u16 member_type, + const char *member_name); +long +ncp_change_property_security(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 property_security); +long +ncp_create_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 property_flags, __u8 property_security); +long +ncp_delete_object_from_set(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u16 member_type, + const char *member_name); +long +ncp_delete_property(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name); +long +ncp_write_property_value(struct ncp_conn *conn, + __u16 object_type, const char *object_name, + const char *property_name, + __u8 segment, + struct nw_property *property_value); +long ncp_login_encrypted(struct ncp_conn *conn, const struct ncp_bindery_object *object, const unsigned char *key, diff --git a/util/ncplib_err.et b/util/ncplib_err.et index 5f7f691..66afe25 100644 --- a/util/ncplib_err.et +++ b/util/ncplib_err.et @@ -18,4 +18,10 @@ ec NCPL_ET_MSG_TOO_LONG, ec NCPL_ET_NO_SPEC, "Could not find valid connection spec" +ec NCPL_ET_INVALID_MODE, + "$HOME/.nwclient has invalid mode" + +ec NCPL_ET_LOGIN_FAILED, + "Login failed" + end \ No newline at end of file