Import ncpfs 0.21

This commit is contained in:
ncpfs archive import
2026-04-28 20:39:58 +02:00
parent 6cb56005ea
commit 92f749a943
6 changed files with 34 additions and 9 deletions

View File

@@ -835,6 +835,15 @@ ncp_find_fileserver(const char *server_name, long *err)
result.sipx_network = n_addr->network;
result.sipx_port = n_addr->port;
ipx_assign_node(result.sipx_node, n_addr->node);
/* To make the final server reachable, we connect again. See
above. (When can we rely on all users running ipxd??? :-)) */
memzero(conn);
if ( ((*err = ncp_connect_addr(&conn, &result, 0)) != 0)
|| ((*err = ncp_do_close(&conn)) != 0))
{
return NULL;
}
return &result;
}
@@ -961,8 +970,16 @@ ncp_open_permanent(struct ncp_conn *conn,
conn->mount_fid = open(mount_point, O_RDONLY, 0);
conn->i.version = NCP_GET_FS_INFO_VERSION;
ioctl(conn->mount_fid, NCP_IOC_GET_FS_INFO, &(conn->i));
strncpy(conn->server, spec->server, sizeof(conn->server));
strncpy(conn->user, spec->user, sizeof(conn->user));
if (spec != NULL)
{
strncpy(conn->server, spec->server, sizeof(conn->server));
strncpy(conn->user, spec->user, sizeof(conn->user));
}
else
{
memset(conn->server, '\0', sizeof(conn->server));
memset(conn->user, '\0', sizeof(conn->user));
}
strcpy(conn->mount_point, mount_point);
conn->is_connected = CONN_PERMANENT;
return 0;