70 |
{"noac", ~NFS_MOUNT_NOAC, NFS_MOUNT_NOAC}, |
{"noac", ~NFS_MOUNT_NOAC, NFS_MOUNT_NOAC}, |
71 |
{"lock", ~NFS_MOUNT_NONLM, 0}, |
{"lock", ~NFS_MOUNT_NONLM, 0}, |
72 |
{"nolock", ~NFS_MOUNT_NONLM, NFS_MOUNT_NONLM}, |
{"nolock", ~NFS_MOUNT_NONLM, NFS_MOUNT_NONLM}, |
73 |
|
{"acl", ~NFS_MOUNT_NOACL, 0}, |
74 |
|
{"noacl", ~NFS_MOUNT_NOACL, NFS_MOUNT_NOACL}, |
75 |
{"v2", ~NFS_MOUNT_VER3, 0}, |
{"v2", ~NFS_MOUNT_VER3, 0}, |
76 |
{"v3", ~NFS_MOUNT_VER3, NFS_MOUNT_VER3}, |
{"v3", ~NFS_MOUNT_VER3, NFS_MOUNT_VER3}, |
77 |
{"udp", ~NFS_MOUNT_TCP, 0}, |
{"udp", ~NFS_MOUNT_TCP, 0}, |
167 |
int c; |
int c; |
168 |
const char *portmap_file; |
const char *portmap_file; |
169 |
pid_t spoof_portmap; |
pid_t spoof_portmap; |
170 |
int err; |
int err, ret; |
171 |
|
|
172 |
if ((err = setjmp(abort_buf))) |
if ((err = setjmp(abort_buf))) |
173 |
return err; |
return err; |
243 |
return 1; |
return 1; |
244 |
#endif |
#endif |
245 |
|
|
246 |
|
ret = 0; |
247 |
if (nfs_mount(rem_name, hostname, server, rem_path, path, |
if (nfs_mount(rem_name, hostname, server, rem_path, path, |
248 |
&mount_data) != 0) |
&mount_data) != 0) |
249 |
return 1; |
ret = 1; |
250 |
|
|
251 |
/* If we set up the spoofer, tear it down now */ |
/* If we set up the spoofer, tear it down now */ |
252 |
if (spoof_portmap) { |
if (spoof_portmap) { |
253 |
kill(SIGTERM, spoof_portmap); |
kill(spoof_portmap, SIGTERM); |
254 |
while (waitpid(spoof_portmap, NULL, 0) == -1 && |
while (waitpid(spoof_portmap, NULL, 0) == -1 && |
255 |
errno == EINTR) |
errno == EINTR) |
256 |
; |
; |
258 |
|
|
259 |
free(rem_name); |
free(rem_name); |
260 |
|
|
261 |
return 0; |
return ret; |
262 |
} |
} |