Home | History | Annotate | Download | only in librmt
History log of /src/lib/librmt/rmtlib.c
RevisionDateAuthorComments
 1.29  22-Mar-2024  andvar s/Cannnot/Cannot/ in error message.
 1.28  27-Dec-2019  msaitoh s/transfered/transferred/
 1.27  03-Oct-2019  christos - user (an alias to the login buffer should be NUL terminated so use strlcpy
- double the size of the resulting buffer so that it can fit a copy of the
same sized buffer + more.
 1.26  21-Mar-2012  matt branches: 1.26.32;
Use C89 function definition
 1.25  21-Jun-2011  mrg branches: 1.25.2; 1.25.4;
add a missing " to a string literal in some #if'd out code that GCC 4.5 found.
 1.24  31-May-2011  christos branches: 1.24.2;
PR/38413: Takahiro Kambe: mt(1) print some junk output when using remote tape
Not all fields are valid in the ioctl to get tape info in the rmt protocol.
Zero out the struct so that we don't print junk.
While here, KNF.
 1.23  18-Feb-2011  pooka Improve isrmt() check: it cannot be a rmt fd if there are no pipes
open for the fd. Prevents collision with rumphijack.

Also, prevent potential hyperspace memory access.

Does someone want to write tests for this facility?
 1.22  31-Aug-2010  enami branches: 1.22.2;
Move prototype of isrmt() to rmt.h. It is a public interface
described in rmtops(3).
 1.21  19-Mar-2006  christos branches: 1.21.4; 1.21.26;
Coverity CID 587: Dead code detected because the loop was using the wrong
variable (rc instead of rv).
 1.20  05-Dec-2005  christos - Pass lint.
- Fix signness problems that confused error detection.
- Avoid possible buffer overflow.
 1.19  08-Mar-2003  lukem add RCSID
 1.18  05-Nov-2001  lukem WARNS=2 fixes
 1.17  06-Apr-2001  wiz Negative exit code cleanup: Replace exit(-x) with exit(x).
As seen on tech-userlevel.
 1.16  05-Jan-2001  enami Make this file compile again on alpha; size_t isn't always same size as int.
 1.15  05-Jan-2001  enami More cosmetic changes.
 1.14  04-Jan-2001  lukem convert to ANSI KNF
 1.13  20-Sep-1999  lukem back out the #ifdef _DIAGNOSTIC argument checks; too many people complained.
_DIAGASSERT() is still retained.
 1.12  16-Sep-1999  lukem * use _DIAGASSERT() to check pointer arguments against NULL and file
descriptors against -1 (as appropriate).
* add actual checks which to detect stuff that would trigger_DIAGASSERT(),
and attempt to return a sane error condition.
* knf some code
* remove some `register' decls.

the first two items result in the addition of code similar to the
following in various functions:

_DIAGASSERT(path != NULL)
#ifdef _DIAGNOSTIC
if (path == NULL) {
errno = EFAULT;
return (-1);
}
#endif
 1.11  02-Jul-1999  simonb More trailing white space.
 1.10  08-Mar-1998  mrg - support RCMD_CMD, ala rcmd(3).
- put paths for rsh and rmt into "pathnames.h"
- document this.
 1.9  21-Oct-1997  thorpej - Convert a few functions to variable arguments so that they can be
prototyped like the functions that they remap (open, fcntl, ioctl).
- Pull in prototypes from <rmt.h>.
 1.8  10-Oct-1997  mrg branches: 1.8.2;
clean up WARNS on the alpha.
 1.7  09-Oct-1997  lukem WARNSify
 1.6  20-Jun-1997  mikel gcc -Wall fixes, including: end unterminated comment (!), add braces
to Ctp and Ptc array initializers, fix sprintf() format in
_rmt_lseek(), add explicit return type for _rmt_ioctl(), and move
isrmt() definition so that it's defined before it's used.
 1.5  23-Jan-1997  mrg - convert unsafe strcpy(), strcat() and sprintf() to the `n' versions.
- some KNF.
 1.4  13-Aug-1996  thorpej Change an instance of "int" to "unsigned long" (the correct type for
ioctl commands under NetBSD) so that this compiles on the Alpha.
 1.3  09-Aug-1996  jtc rsh is now in /usr/bin, not /usr/ucb
 1.2  09-Aug-1996  jtc minor changes for better integration into NetBSD
 1.1  09-Aug-1996  jtc Remote mag tape library from volume 18 of comp.sources.unix.
 1.8.2.1  21-Oct-1997  thorpej Pull up from trunk:

- Convert a few functions to variable arguments so that they can be
prototyped like the functions that they remap (open, fcntl, ioctl).
- Pull in prototypes from <rmt.h>.
 1.21.26.1  17-Sep-2011  bouyer Pull up following revision(s) (requested by dholland in ticket #1660):
lib/librmt/rmtlib.c: revisions 1.23, 1.24
Improve isrmt() check: it cannot be a rmt fd if there are no pipes
open for the fd. Prevents collision with rumphijack.
Also, prevent potential hyperspace memory access.
Does someone want to write tests for this facility?
PR/38413: Takahiro Kambe: mt(1) print some junk output when using remote tape
Not all fields are valid in the ioctl to get tape info in the rmt protocol.
Zero out the struct so that we don't print junk.
While here, KNF.
 1.21.4.1  19-Nov-2011  bouyer Pull up following revision(s) (requested by dholland in ticket #1432):
lib/librmt/rmtlib.c: revision 1.23
lib/librmt/rmtlib.c: revision 1.24
Improve isrmt() check: it cannot be a rmt fd if there are no pipes
open for the fd. Prevents collision with rumphijack.
Also, prevent potential hyperspace memory access.
Does someone want to write tests for this facility?
PR/38413: Takahiro Kambe: mt(1) print some junk output when using remote tape
Not all fields are valid in the ioctl to get tape info in the rmt protocol.
Zero out the struct so that we don't print junk.
While here, KNF.
 1.22.2.1  05-Mar-2011  bouyer Sync with HEAD
 1.24.2.1  23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.25.4.2  23-Apr-2012  riz Back out changes committed as part of ticket #195 which were apparently
not intended as part of the pullup request. Should fix netbsd-6 build.
 1.25.4.1  23-Apr-2012  riz Pull up following revision(s) (requested by manu in ticket #195):
lib/libskey/skeysubr.c: revision 1.27
lib/libkvm/kvm_getloadavg.c: revision 1.11
lib/libwrap/update.c: revision 1.9
lib/liby/yyerror.c: revision 1.9
lib/libpuffs/puffs_ops.3: revision 1.30
lib/libwrap/misc.c: revision 1.10
lib/libwrap/hosts_access.c: revision 1.20
lib/libpuffs/pnode.c: revision 1.11
lib/libperfuse/subr.c: revision 1.17
lib/libpuffs/pnode.c: revision 1.12
lib/libperfuse/subr.c: revision 1.18
lib/libwrap/options.c: revision 1.15
lib/libwrap/fix_options.c: revision 1.11
lib/libperfuse/ops.c: revision 1.52
lib/libperfuse/ops.c: revision 1.53
lib/libperfuse/ops.c: revision 1.54
lib/libwrap/hosts_ctl.c: revision 1.5
lib/libintl/gettext.c: revision 1.27
lib/libwrap/shell_cmd.c: revision 1.6
lib/libpuffs/dispatcher.c: revision 1.39
lib/libperfuse/perfuse_priv.h: revision 1.27
lib/libwrap/socket.c: revision 1.19
lib/libpuffs/puffs.3: revision 1.50
lib/libperfuse/perfuse_priv.h: revision 1.28
lib/libpuffs/puffs_priv.h: revision 1.45
lib/libpuffs/puffs.3: revision 1.51
lib/libperfuse/perfuse_priv.h: revision 1.29
lib/libwrap/percent_x.c: revision 1.5
lib/libpuffs/puffs.3: revision 1.52
lib/libperfuse/debug.c: revision 1.11
sys/fs/puffs/puffs_vnops.c: revision 1.165
lib/libwrap/tcpd.h: revision 1.13
sys/fs/puffs/puffs_vnops.c: revision 1.166
lib/libwrap/eval.c: revision 1.7
sys/fs/puffs/puffs_msgif.h: revision 1.78
sys/fs/puffs/puffs_vfsops.c: revision 1.101
lib/libwrap/rfc931.c: revision 1.9
lib/libwrap/clean_exit.c: revision 1.5
lib/libpuffs/puffs.h: revision 1.120
lib/libc/stdlib/jemalloc.c: revision 1.27
lib/librmt/rmtlib.c: revision 1.26
lib/libpuffs/puffs.h: revision 1.121
sys/fs/puffs/puffs_sys.h: revision 1.79
lib/librumpclient/rumpclient.c: revision 1.48
lib/libwrap/refuse.c: revision 1.5
lib/libperfuse/perfuse.c: revision 1.26
lib/libperfuse/perfuse.c: revision 1.27
tests/fs/puffs/t_fuzz.c: revision 1.5
lib/libperfuse/perfuse.c: revision 1.28
lib/libpuffs/dispatcher.c: revision 1.40
sys/fs/puffs/puffs_node.c: revision 1.24
lib/libwrap/diag.c: revision 1.9
lib/libintl/textdomain.c: revision 1.13
Use C89 function definition
Add name and atttribute cache with filesytem provided TTL.
lookup, create, mknod, mkdir, symlink, getattr and setattr messages
have been extended so that attributes and their TTL can be provided
by the filesytem. lookup, create, mknod, mkdir, and symlink messages
are also extended so that the filesystem can provide name TTL.
Add PUFFS_KFLAG_CACHE_FS_TTL flag to puffs_init(3) to use name and
attribute cache with filesystem provided TTL.
lookup, create, mknod, mkdir, symlink, getattr and setattr messages
have been extended so that attributes and their TTL can be provided
by the filesytem. lookup, create, mknod, mkdir, and symlink messages
are also extended so that the filesystem can provide name TTL.
The filesystem updates attributes and TTL using
puffs_pn_getvap(3), puffs_pn_getvattl(3), and puffs_pn_getcnttl(3)
Use new PUFFS_KFLAG_CACHE_FS_TTL option to puffs_init(3) so that
FUSE TTL on name and attributes are used. This save many PUFFS
operations and improves performances.
PUFFS_KFLAG_CACHE_FS_TTL is #ifdef'ed in many places for now so that
libperfuse can still be used on netbsd-5.
Split file system.
Comma fixes.
Remove dangling &quot;and&quot;.
Bump date for previous.
- Makesure update_va does not change vnode size when it should not. For
instance when doing a fault-issued VOP_GETPAGES within VOP_WRITE, changing
size leads to panic: genfs_getpages: past eof.
-Handle ticks wrap around for vnode name andattribute timeout
- When using PUFFS_KFLAG_CACHE_FS_TTL, do not use puffs_node to carry
attribute and TTL fora newly created node. Instead extend puffs_newinfo
and add puffs_newinfo_setva() and puffs_newinfo_setttl()
- Remove node_mk_common_final in libperfuse. It used to set uid/gid for
a newly created vnode but has been made redundant along time ago since
uid and gid are properly set in FUSE header.
- In libperfuse, check for corner case where opc = 0 on INACTIVE and RECLAIM
(how is it possible? Check for it to avoid a crash anyway)
- In libperfuse, make sure we unlimit RLIMIT_AS and RLIMIT_DATA so that
we do notrun out of memory because the kernel is lazy at reclaiming vnodes.
- In libperfuse, cleanup style of perfuse_destroy_pn()
Do not set PUFFS_KFLAG_CACHE_FS_TTL for PUFFS tests
 1.25.2.1  17-Apr-2012  yamt sync with head
 1.26.32.2  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.26.32.1  08-Apr-2020  martin Merge changes from current as of 20200406

RSS XML Feed