Commit Graph

367 Commits

Author SHA1 Message Date
njoly cbcd12b119 Define RUMP_DISKFS to provide getdiskinfo from rumpdev_disk library. 2011-11-14 11:28:05 +00:00
wiz 5f13296f84 Wording, from Snader_LB. 2011-09-15 11:52:09 +00:00
joerg bec77c5f43 Use __dead 2011-08-31 13:32:36 +00:00
jakllsch 3c644b8a5a Bring mount_psshfs user/host/path argument processing in line with sftp(1). 2011-08-25 19:49:05 +00:00
riastradh 772f45cfc9 Cache vattr in psshfs's setattr.
This means within the cache window, a setattr that wouldn't change the
remote file's attributes from our current view of them will not be
relayed to the server and wait for the server to answer.  Thus, e.g., a
process with a periodic timer interrupt that calls open(2) in a loop
can make progress with much higher probability than without caching.

XXX The test case doesn't work, so it's currently disabled.  It needs
to stop the child of sshd that is handling an sftp session, not sshd
itself, and it's not obvious how to do that.

ok pooka
2011-08-12 04:14:00 +00:00
uch 876775fb1a regen 2011-07-24 09:00:06 +00:00
uch 7ce939b3e2 v7fs rump support 2011-07-24 08:55:28 +00:00
mrg 33c01d32fc remove some always true if () checks GCC 4.5.3 picks up. 2011-06-22 04:03:23 +00:00
riastradh f4368f5168 Initialize psshfs root node's readdir waiters queue.
Every other node's readder waiters queue is initialized in makenode,
but the root node is created specially.

ok pooka
2011-05-19 15:07:16 +00:00
pooka 39f08af21d mirror change of -lrumpcrypto ==> -lrumpkern_crypto 2010-12-05 20:13:26 +00:00
pooka b4c2ac23fe regen 2010-11-22 07:56:54 +00:00
pooka c21dcb457e include script rcsid in generated file
(no change to rendered output)
2010-11-22 07:56:31 +00:00
pooka 7cd2722c7b these files are no longer autogenerated, so remove them 2010-11-22 01:09:34 +00:00
pooka a0afe062df regen 2010-11-22 01:08:23 +00:00
pooka 5e0d1e96f8 Generate different manpages for 1) disk 2) net 3) fictional file systems. 2010-11-22 01:07:51 +00:00
pooka 76f518f570 regen 2010-11-21 19:32:16 +00:00
pooka 41308443e5 * document disk.img%DISKLABEL:p%
* tweaks
2010-11-21 19:29:01 +00:00
pooka 080506bc5d Make error message more userfriendly in cases where server does
not support sftp.
2010-10-29 16:13:51 +00:00
pooka 0a80f65755 support CTLTYPE_BOOL 2010-08-06 15:26:16 +00:00
pooka c7528563f1 If compiled with RUMP_ACTION, access rump kernel instead of host
kernel.  This is an easy way to browse & modify the sysctl tree
offered by a rump kernel instance.
2010-08-06 15:04:13 +00:00
pooka b36b2c0f6d Remove unused LDADD lines. They need work to work, and if anyone
ever does that work, they surely can come up with the LDADD line as
well.
2010-07-20 14:42:03 +00:00
mrg 6479f6e5b4 ldap is configured to depend upon MKCRYPTO no, so force MKLAP=no if
MKCRYPTO=no.
don't build pkg_install, libcrypto tests or rump_smbfs if MKCRYPTO=no.
mark librumpcrypto, rump_smb, pkg_*

fix set lists as appropriate.
2010-07-11 06:16:54 +00:00
pooka afdc25dbdf When using the top secret PUFFS_COMFD model, write out size of the
puffs kernel args before the contents.  This allows parties which
have no clue about the contents to proxy the protocol easily.
2010-07-06 13:27:16 +00:00
pooka bdc0f19ba4 link putter now that it's a separate component 2010-06-30 16:22:49 +00:00
dholland c91651efd0 Requires sys/param.h. 2010-05-30 04:32:09 +00:00
pooka cf3a71d4a7 Add rump_au-naturel, which instead of mounting a file system inside
the rump kernel just attaches to / in said rump kernel instance.
This is mostly useful in case wanting to see what nodes components
create (see Makefile).

not built without manual intervention
2010-04-29 22:42:48 +00:00
wiz d692f84d06 Sort options in SYNOPSIS (flags without arguments first). 2010-04-11 21:34:18 +00:00
pooka 04c1597880 Add raw mode, which skips ASCII'ification and can be used if reading
structures from the kernel into debug program memory is desired.
2010-04-11 15:08:17 +00:00
pooka c8360f5cc9 Instead of totally giving up, dump CTLTYPE_STRUCT as hex, much
like sysctl -x (but not fancy like -dosequis).
2010-04-11 08:30:17 +00:00
pooka 326638b53f In case we create a file, reclaim the vnode, and lookup the file
without the directory timeout expiring, we get vattr_null as the
attributes for that file.  Ensure that we always report sane
attributes by getting them from the server if this is the case.
(also, sprinkle some const)

Fixes problem reported by dyoung.   But wait!  The bug's medallion
begins to glow!  The bug looks much better!  I crumble to dust.

There's probably another similar bug related to "lazy open".  It
will trigger if we reclaim a node before the response to the open
arrives.  Even the comments (typoless) know about this bug ...
But verifying it exists and fixing it will have to wait for another
day.
2010-04-01 02:34:09 +00:00
pooka f53fd22c3c fix typo (at least it was in an error string instead of a comment) 2010-03-31 14:54:07 +00:00
pooka be33b37b2e regen 2010-03-31 14:49:46 +00:00
pooka 5e15c7d5fc MAP_COPY is available only in _KERNEL .... uh, so don't use it here. 2010-03-31 14:49:02 +00:00
pooka 5fb5ff121c Add note saying that the manual page is autogenerated and all parts
may not apply to this particular server.

TODO: have three different texts, one for device backed file systems
(e.g. ffs), another for network backed (e.g. nfs), and a third for
fictional (e.g. kernfs)
2010-03-31 14:45:59 +00:00
pooka e83b6a1151 generate 2010-03-31 14:33:37 +00:00
pooka bde226973a Add kernfs server.
Don't build & install it by default, since it represents the state
of the rump virtual kernel and not the host kernel.  However, it's
useful for debugging kernfs.
2010-03-31 14:22:27 +00:00
pooka 50cfd7e754 add commented out nqmfs 2010-03-08 12:48:31 +00:00
pooka c11c0f21f8 Not Quite MFS
Instead of copulating with newfs to produce a new FFS image into
memory, mmap() a given existing image and pass that as the backing
store.  If -s is given, mmap is done with MAP_SHARED and changes
are kept across mounts, else MAP_COPY (i.e. MAP_PRIVATE for us) is
done and changes are lost when the server exits.

Note: -s does not guarantee any kind of file system safety whatsoever
and in case of kill, crash, exit or other form of elusion,
everything will be, according to our theme, quite screwed.
2010-03-08 12:46:33 +00:00
pooka ed49ad5f70 Give usage() a chance.
XXX: UKFS_DEVICE_ARGVPROBE() interface
2010-03-03 17:37:01 +00:00
pooka d317936de6 umgah. meant fts, not fsu 2010-02-17 15:54:10 +00:00
pooka 046f5845a2 Bump the initial rootdir link count guess to a ludicrous value. 2010-02-17 15:50:54 +00:00
pooka 73655f9fb0 Save "." attributes in readdir. This fixes the root link count
after readdir is called for the root dir the first time (yes,
there's still a window of wrong link count after the fs is mounted.
it's currently quite difficult to call sftp_readdir() from outside
the main loop).

Should fix "find /mnt" problem for a mountpoint with more than the
"guessed" amount of subdirectories, as reported by dyoung.
2010-02-17 15:47:36 +00:00
pooka 70b8adf303 Give credit: psshfs was inspired by FUSE sshfs. 2010-02-03 17:16:29 +00:00
pooka 7face90494 statvfs:
Since bresvd is not available from the server, calculate:
	bresvd = bfree - bavail.

Then df calculates:
	bavail = bfree - bresvd;

And we now get a much more accurate report from df on how much one
can write to the fs.
2010-02-03 17:02:52 +00:00
pooka 26994c608b Define concept "disk based file system" and flag appropriate file
systems as such.
2010-01-25 15:55:36 +00:00
pooka ef38ca9933 Make r/w servers unmount themselves cleanly upon receiving SIGINT/TERM. 2010-01-12 18:43:37 +00:00
pooka e828ea6b56 Fix compilation with -Wsign-compare. Apparently 5.0 doesn't have
-Wsign-compare enabled, which explains a thing or two ...

pointed out by gson
2010-01-08 10:53:31 +00:00
wiz a9e00b2097 Don't be terse. 2010-01-07 23:35:45 +00:00
pooka eac396bb5a errx() already contains progname ... 2010-01-07 21:26:49 +00:00
pooka 754f939dd3 Don't allow mangling of uid or gid -1, since they have a special
meaning in the sftp protocol.
2010-01-07 21:23:10 +00:00
pooka 6cd252da60 Fix chgrp (and don't rely on VNOVAL being -1, however unlikely that
is to be broken).
2010-01-07 21:19:45 +00:00
pooka c4291c195a Add -u and -g, which allow to remap one (local,remote) uidgid, i.e.
umapfs without the fuss.
2010-01-07 21:05:50 +00:00
pooka 0ab737e1d6 add ranty rant about data storage in tmpfs 2009-12-17 14:06:38 +00:00
pooka 0446aae700 Call ukfs_part_release(). For completeness and educational value. 2009-12-13 21:16:54 +00:00
pooka abcee849c9 This is linked against rumpnet_sockin, so it should not be linked
against rumpnet_netinet anymore.
2009-12-11 16:46:27 +00:00
pooka 70d4493c77 Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs.  User functionality remains the same.
2009-12-05 20:11:01 +00:00
pooka a1c4673949 Adapt ukfs users to the new ukfs_part interface. 2009-12-03 14:27:16 +00:00
pooka 3b493fbd05 remove unnecessary LDADD 2009-12-03 14:26:44 +00:00
pooka 597f5b5581 Link fs components into binary instead of loading dynamically now
that it's possible (dependency handling changes to rumpuser_dl).
2009-11-05 14:17:07 +00:00
pooka 5866121c7c more lp64 it's-a-sign! fixes 2009-11-05 13:28:18 +00:00
pooka 07b61426de WARNS=2 (netsmb is not pointer-sign-confusion-lp64-clean) 2009-11-05 13:26:02 +00:00
pooka 1aa117e65e lp64 sign comparison 2009-11-05 13:09:56 +00:00
pooka 23517ba3a1 Need to p2k_init() (i.e. fork()) earlier to not lose threads created
in rump_init().
2009-11-05 12:00:18 +00:00
pooka a91d18a45a pump up the WARNS to 4 2009-11-05 11:41:43 +00:00
pooka de048bdaae const woes 2009-11-05 11:40:24 +00:00
pooka 95a13440ba use rump_pub interface name 2009-10-20 02:14:54 +00:00
pooka 9d203cca46 g/c unused variable 2009-10-20 02:14:12 +00:00
pooka a4001afaf1 remove abort trap leftover from my testing 2009-10-18 19:58:04 +00:00
pooka c5e347e2a8 Use new p2k interfaces and make it possible to detach rump_smbfs 2009-10-18 19:38:35 +00:00
pooka 8209f3a11a adapt to new p2k interfaces 2009-10-18 19:37:25 +00:00
pooka a64df16285 Remove threading ifdefs. It was never easy to run the nfs client
without threads, but now it's even more difficult due to sillyrename
using workqueue, so whoever wants to do it will have to take to
manual fiddling.
2009-10-18 16:02:15 +00:00
pooka 2d07f409b9 Use write through cache here too. Doesn't make the same kind of
difference as with smbfs since nfs is "stateless", but better to
have the data on the server ASAP in case some other nods wants to
use it.
2009-10-18 15:57:15 +00:00
pooka 8a8f57910d Use PUFFS_KFLAG_WTCACHE since it's sensible for a distributed file
server (plus it makes write work in the first place since the
descriptors don't get closed before the cache is flushed).
2009-10-18 15:14:13 +00:00
pooka bf3992af18 Adjust names of external rump control interfaces to match the
new rump_pub namespace.
2009-10-14 18:22:50 +00:00
pooka 68c5575108 Start cleaner without the sleep(1) hack now that it's possible. 2009-10-09 16:38:21 +00:00
pooka d07d1f307a Support disklabels. 2009-10-07 20:59:09 +00:00
pooka 018821014f No need to ukfs_modload() ext2fs anymore. 2009-10-07 20:11:05 +00:00
skrll 52749c1bca Rely on the new and "just as awful as the old" hack in the battle of rump
vs link sets.
2009-09-14 17:24:20 +00:00
skrll b7d7171c7c Allow this to build while link sets and rump are broken. 2009-09-11 06:48:50 +00:00
pooka f59c73ba56 Build & install rump_smbfs 2009-09-06 21:03:27 +00:00
pooka b0d965c6f5 Add rump_smbfs. It's innards are different from most file systems
in two respects:
    * in addition to vfs (and networking), it depends on kernel
      device code to provide /dev/nsmb
    * mounting involves having lengthy chats with the kernel smb
      device instead of the typical "parse args and mount(2) away".

Seems to be pretty stable, at least data seems to flow over it
faster than over in-kernel nfs.
2009-09-06 20:26:47 +00:00
skrll 7842ef85bb No-one wins in rump vs link sets.
XXX Someone(tm) needs to fix this properly.
2009-08-21 14:41:22 +00:00
pooka ceedea85d6 run lfs cleaner 2009-08-06 01:00:04 +00:00
pooka 3e3523f9c8 add commented-out rump_fdesc along with an explanation 2009-07-31 19:21:55 +00:00
pooka ad25a49dbe rump_fdesc. it works, but it's actually not very sexy out of
developer clothes, since the server cannot fetch the fd information
from the kernel.  Therefore, don't build it by default.
2009-07-31 19:18:46 +00:00
pooka 92eb973615 don't need absolute paths for fs component names 2009-07-21 00:40:44 +00:00
pooka d6d0aeb45d Make rump_lfs work again: load fs components dynamically instead
of trying to link them in on the command line and get pounded by
link set failage.
2009-07-21 00:37:25 +00:00
pooka 540fcdb7ef +pseudo-device putter 2009-06-09 14:27:17 +00:00
njoly 4c9ac951c7 Fix a crash while trying to read nodes on amd64, reported in PR/41494,
by not doing any transfert when offset exceed the actual data length.

From and ok by pooka@.
2009-05-28 10:07:06 +00:00
pooka d6c25c2b9b wait() for dead ssh processes (but don't block, so we might have
one teeny zmobie in the system).
2009-05-20 15:04:36 +00:00
pooka b5cb6a6ca0 Fix SNAFU in previous: connection handshake is already handled by
the connect routine now, so we're not required/allowed to do it twice.
Makes reconnect on dead link work again.
2009-05-20 14:39:42 +00:00
pooka dac06153a9 Copyright year management. no functional change (unless sarah disagrees) 2009-05-20 14:08:21 +00:00
pooka 8ff915319e Introduce -c [12], which can be used to open 1 or 2 ssh connections
to the server.  If "2" is specified, a separate connection is used
for data and directory operations.  Using two connections can
significantly increase directory operation performance on a saturated
link, at least up to 30x faster.
2009-05-20 13:56:36 +00:00
pooka 45ef580f17 Merge librumpfs_ufs into librumpfs_ffs. This reflects what happened
with the ffs kernel module and follows the trend of retiring ufs.
It also allows to get rid of a special case kludge in runtime module
loading, since ufs was not really a module.  librumpfs_ufs is now
obsoleted and ffs consumers should be linked solely against
librumpfs_ffs.
2009-05-02 01:15:52 +00:00
lukem d877c4c3c0 Enable WARNS=4 by default, except for:
cpuctl  dumplfs  hprop  ipf  iprop-log  kadmin  kcm  kdc  kdigest
	kimpersonate  kstash  ktutil  makefs  ndbootd  ntp  pppd  quot
	racoon  racoonctl  rtadvd  sntp  sup  tcpdchk  tcpdmatch  tcpdump
	traceroute  traceroute6  user  veriexecgen  wsmoused  zic
(Mostly third-party applications)
2009-04-22 15:23:01 +00:00
pooka 73871be1ed fix WARNS=4, recipe from lukem 2009-04-15 08:36:21 +00:00
pooka d3739e6172 Save errno before descending to cleanup gehennom. 2009-03-29 16:06:53 +00:00
pooka 61260da885 In case the portal provider fails, do not try to pass an
uninitialized fd value.  Also, propagate errno to the caller.
2009-03-18 09:10:16 +00:00
wiz 2dba01f8d6 Make "sftp" a link. 2009-02-26 07:14:36 +00:00
pooka 928c35bfce add caveat about info displayed by df(1) 2009-02-25 18:05:32 +00:00