linux-decnet-commit Mailing List for DECnet for Linux (Page 14)
Brought to you by:
chrissie_c,
ph3-der-loewe
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(15) |
Nov
(16) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(20) |
Feb
(27) |
Mar
(25) |
Apr
(12) |
May
(2) |
Jun
(6) |
Jul
(36) |
Aug
(12) |
Sep
(12) |
Oct
(16) |
Nov
(5) |
Dec
(5) |
2003 |
Jan
(8) |
Feb
(9) |
Mar
(25) |
Apr
(18) |
May
(29) |
Jun
(4) |
Jul
(1) |
Aug
|
Sep
(10) |
Oct
(5) |
Nov
(3) |
Dec
(9) |
2004 |
Jan
(17) |
Feb
|
Mar
(9) |
Apr
|
May
(4) |
Jun
(1) |
Jul
(2) |
Aug
(21) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2005 |
Jan
(5) |
Feb
|
Mar
(13) |
Apr
|
May
(3) |
Jun
(1) |
Jul
|
Aug
|
Sep
(13) |
Oct
(83) |
Nov
(2) |
Dec
|
2006 |
Jan
(21) |
Feb
(1) |
Mar
(32) |
Apr
(31) |
May
(3) |
Jun
(1) |
Jul
|
Aug
(7) |
Sep
|
Oct
(1) |
Nov
(3) |
Dec
(13) |
2007 |
Jan
(1) |
Feb
(7) |
Mar
|
Apr
(2) |
May
|
Jun
(1) |
Jul
(2) |
Aug
(20) |
Sep
|
Oct
|
Nov
|
Dec
(7) |
2008 |
Jan
(4) |
Feb
(13) |
Mar
(24) |
Apr
(18) |
May
(10) |
Jun
|
Jul
|
Aug
(40) |
Sep
(72) |
Oct
(61) |
Nov
(9) |
Dec
(2) |
2009 |
Jan
(6) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(7) |
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
|
Dec
(3) |
2010 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
|
Jun
|
Jul
(41) |
Aug
(28) |
Sep
(2) |
Oct
(5) |
Nov
(4) |
Dec
|
2011 |
Jan
(7) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Christine C. <chr...@us...> - 2008-04-03 08:38:37
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15272 Modified Files: dapfs.c Log Message: Make block mode work. Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -r1.23 -r1.24 *** dapfs.c 2 Apr 2008 19:16:40 -0000 1.23 --- dapfs.c 3 Apr 2008 08:38:34 -0000 1.24 *************** *** 348,353 **** fab.fab$b_rfm = RFM_STMLF; ! if (blockmode) ! fab.fab$b_fac = FAB$M_BRO; h->rmsh = rms_open(fullname, fi->flags, &fab); --- 348,357 ---- fab.fab$b_rfm = RFM_STMLF; ! /* Block transfers */ ! if (blockmode && !(fi->flags & O_CREAT)) ! { ! fab.fab$b_fac = FAB$M_BRO | FAB$M_GET; ! fab.fab$b_shr = FAB$M_GET; ! } h->rmsh = rms_open(fullname, fi->flags, &fab); *************** *** 361,365 **** } ! /* Save RMS attributes */ h->org = fab.fab$b_org; h->rat = fab.fab$b_rat; --- 365,369 ---- } ! /* Save RMS attributes of the file */ h->org = fab.fab$b_org; h->rat = fab.fab$b_rat; *************** *** 401,406 **** loffset = (unsigned int)offset; rab.rab$l_kbf = &offset; ! rab.rab$b_rac = 6;// Stream 2;//FB$RFA; ! rab.rab$b_ksz = 6;// 3x words, like an RFA// sizeof(loffset); rab.rab$w_usz = size; --- 405,410 ---- loffset = (unsigned int)offset; rab.rab$l_kbf = &offset; ! rab.rab$b_rac = 6;// Stream ! rab.rab$b_ksz = 6;// 3x words, like an RFA rab.rab$w_usz = size; *************** *** 411,414 **** --- 415,421 ---- } + if (blockmode) + rab.rab$b_rac = 5; // BLOCKFT + if (debuglevel&1) fprintf(stderr, "dapfs_read: kf space available = %d, free=%d, size=%d\n", kfifo_len(h->kf), kfifo_avail(h->kf), size); *************** *** 437,444 **** // Not enough room in the circular buffer to read another record! if (res < 0) { res = 0; break; - // assert (res >= 0); // FIXME! } --- 444,451 ---- // Not enough room in the circular buffer to read another record! + // This can still break dapfs is the local circular buffer is too small... if (res < 0) { res = 0; break; } *************** *** 451,455 **** res = convert_rms_record(tmpbuf, res, h); ! kfifo_put(h->kf, tmpbuf, res); if (debuglevel&2) --- 458,462 ---- res = convert_rms_record(tmpbuf, res, h); ! kfifo_put(h->kf, (unsigned char *)tmpbuf, res); if (debuglevel&2) *************** *** 463,467 **** to_copy = kfifo_len(h->kf); ! kfifo_get(h->kf, buf, to_copy); if (res >= 0) { --- 470,474 ---- to_copy = kfifo_len(h->kf); ! kfifo_get(h->kf, (unsigned char *)buf, to_copy); if (res >= 0) { *************** *** 596,613 **** option = strchr(t, '='); - if (!option) - goto next_tok; option++; optptr = t + strspn(t, " "); ! if (strncmp("username=", optptr, 9) == 0) { username = strdup(option); processed = 1; } ! if (strncmp("password=", optptr, 9) == 0) { password = strdup(option); processed = 1; } ! if (strncmp("debuglog=", optptr, 9) == 0) { debuglevel = atoi(option); processed = 1; --- 603,618 ---- option = strchr(t, '='); option++; optptr = t + strspn(t, " "); ! if (strncmp("username=", optptr, 9) == 0 && option) { username = strdup(option); processed = 1; } ! if (strncmp("password=", optptr, 9) == 0 && option) { password = strdup(option); processed = 1; } ! if (strncmp("debuglog=", optptr, 9) == 0 && option) { debuglevel = atoi(option); processed = 1; *************** *** 621,625 **** processed = 1; } - next_tok: t = strtok(NULL, ","); } --- 626,629 ---- *************** *** 696,699 **** --- 700,706 ---- fprintf(stderr, "prefix is now: %s\n", prefix); + if (debuglevel&2 && blockmode) + fprintf(stderr, "Sending files in BLOCK mode\n"); + // Make a scratch connection - also verifies the path name nice and early if (dap_init()) { *************** *** 704,706 **** return fuse_main(argc-1, argv+1, &dapfs_oper); } - --- 711,712 ---- |
From: Christine C. <chr...@us...> - 2008-04-02 19:16:45
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18838 Modified Files: Makefile dapfs.c mount.dapfs.8 Added Files: kfifo.c kfifo.h Log Message: Use kfifo circular buffer for record reads. Add (untested) block mode --- NEW FILE: kfifo.c --- /* * A simple kernel FIFO implementation. * * Copyright (C) 2004 Stelian Pop <st...@po...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * */ #include <stdlib.h> #include <string.h> #include <errno.h> #include "kfifo.h" /* * min()/max() macros that also do * strict type-checking.. See the * "unnecessary" pointer comparison. */ #define min(x,y) ({ \ typeof(x) _x = (x); \ typeof(y) _y = (y); \ (void) (&_x == &_y); \ _x < _y ? _x : _y; }) #define max(x,y) ({ \ typeof(x) _x = (x); \ typeof(y) _y = (y); \ (void) (&_x == &_y); \ _x > _y ? _x : _y; }) /** * kfifo_init - allocates a new FIFO using a preallocated buffer * @buffer: the preallocated buffer to be used. * @size: the size of the internal buffer, this have to be a power of 2. * * Do NOT pass the kfifo to kfifo_free() after use! Simply free the * &struct kfifo with kfree(). */ struct kfifo *kfifo_init(unsigned char *buffer, unsigned int size) { struct kfifo *fifo; /* size must be a power of 2 */ fifo = malloc(sizeof(struct kfifo)); if (!fifo) { errno = ENOMEM; return NULL; } fifo->buffer = buffer; fifo->size = size; fifo->in = fifo->out = 0; return fifo; } /** * kfifo_alloc - allocates a new FIFO and its internal buffer * @size: the size of the internal buffer to be allocated. * * The size will be rounded-up to a power of 2. */ struct kfifo *kfifo_alloc(unsigned int size) { unsigned char *buffer; struct kfifo *ret; /* * round up to the next power of 2, since our 'let the indices * wrap' tachnique works only in this case. */ if (size & (size - 1)) { // size = roundup_pow_of_two(size); } buffer = malloc(size); if (!buffer) { errno = ENOMEM; return 0; } ret = kfifo_init(buffer, size); if (!ret) free(buffer); return ret; } /** * kfifo_free - frees the FIFO * @fifo: the fifo to be freed. */ void kfifo_free(struct kfifo *fifo) { free(fifo->buffer); free(fifo); } /** * __kfifo_put - puts some data into the FIFO, no locking version * @fifo: the fifo to be used. * @buffer: the data to be added. * @len: the length of the data to be added. * * This function copies at most @len bytes from the @buffer into * the FIFO depending on the free space, and returns the number of * bytes copied. * * Note that with only one concurrent reader and one concurrent * writer, you don't need extra locking to use these functions. */ unsigned int __kfifo_put(struct kfifo *fifo, unsigned char *buffer, unsigned int len) { unsigned int l; len = min(len, fifo->size - fifo->in + fifo->out); /* first put the data starting from fifo->in to buffer end */ l = min(len, fifo->size - (fifo->in & (fifo->size - 1))); memcpy(fifo->buffer + (fifo->in & (fifo->size - 1)), buffer, l); /* then put the rest (if any) at the beginning of the buffer */ memcpy(fifo->buffer, buffer + l, len - l); fifo->in += len; return len; } /** * __kfifo_get - gets some data from the FIFO, no locking version * @fifo: the fifo to be used. * @buffer: where the data must be copied. * @len: the size of the destination buffer. * * This function copies at most @len bytes from the FIFO into the * @buffer and returns the number of copied bytes. * * Note that with only one concurrent reader and one concurrent * writer, you don't need extra locking to use these functions. */ unsigned int __kfifo_get(struct kfifo *fifo, unsigned char *buffer, unsigned int len) { unsigned int l; len = min(len, fifo->in - fifo->out); /* first get the data from fifo->out until the end of the buffer */ l = min(len, fifo->size - (fifo->out & (fifo->size - 1))); memcpy(buffer, fifo->buffer + (fifo->out & (fifo->size - 1)), l); /* then get the rest (if any) from the beginning of the buffer */ memcpy(buffer + l, fifo->buffer, len - l); fifo->out += len; return len; } --- NEW FILE: kfifo.h --- /* * A simple kernel FIFO implementation. * * Copyright (C) 2004 Stelian Pop <st...@po...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * */ struct kfifo { unsigned char *buffer; /* the buffer holding the data */ unsigned int size; /* the size of the allocated buffer */ unsigned int in; /* data is added at offset (in % size) */ unsigned int out; /* data is extracted from off. (out % size) */ }; extern struct kfifo *kfifo_init(unsigned char *buffer, unsigned int size); extern struct kfifo *kfifo_alloc(unsigned int size); extern void kfifo_free(struct kfifo *fifo); extern unsigned int __kfifo_put(struct kfifo *fifo, unsigned char *buffer, unsigned int len); extern unsigned int __kfifo_get(struct kfifo *fifo, unsigned char *buffer, unsigned int len); /** * __kfifo_reset - removes the entire FIFO contents, no locking version * @fifo: the fifo to be emptied. */ static inline void __kfifo_reset(struct kfifo *fifo) { fifo->in = fifo->out = 0; } /** * kfifo_reset - removes the entire FIFO contents * @fifo: the fifo to be emptied. */ static inline void kfifo_reset(struct kfifo *fifo) { __kfifo_reset(fifo); } /** * kfifo_put - puts some data into the FIFO * @fifo: the fifo to be used. * @buffer: the data to be added. * @len: the length of the data to be added. * * This function copies at most @len bytes from the @buffer into * the FIFO depending on the free space, and returns the number of * bytes copied. */ static inline unsigned int kfifo_put(struct kfifo *fifo, unsigned char *buffer, unsigned int len) { return __kfifo_put(fifo, buffer, len); } /** * kfifo_get - gets some data from the FIFO * @fifo: the fifo to be used. * @buffer: where the data must be copied. * @len: the size of the destination buffer. * * This function copies at most @len bytes from the FIFO into the * @buffer and returns the number of copied bytes. */ static inline unsigned int kfifo_get(struct kfifo *fifo, unsigned char *buffer, unsigned int len) { unsigned int ret; ret = __kfifo_get(fifo, buffer, len); /* * optimization: if the FIFO is empty, set the indices to 0 * so we don't wrap the next time */ if (fifo->in == fifo->out) fifo->in = fifo->out = 0; return ret; } /** * __kfifo_len - returns the number of bytes available in the FIFO, no locking version * @fifo: the fifo to be used. */ static inline unsigned int __kfifo_len(struct kfifo *fifo) { return fifo->in - fifo->out; } /** * kfifo_len - returns the number of bytes available in the FIFO * @fifo: the fifo to be used. */ static inline unsigned int kfifo_len(struct kfifo *fifo) { return __kfifo_len(fifo); } /** * kfifo_used - returns the number of bytes free in the FIFO * @fifo: the fifo to be used. */ static inline unsigned int kfifo_avail(struct kfifo *fifo) { return fifo->size - __kfifo_len(fifo); } Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** Makefile 2 Apr 2008 12:39:27 -0000 1.12 --- Makefile 2 Apr 2008 19:16:40 -0000 1.13 *************** *** 7,11 **** MANPAGES=mount.dapfs.8 ! PROG1OBJS=dapfs.o dapfs_dap.o filenames.o all: $(PROG1) --- 7,11 ---- MANPAGES=mount.dapfs.8 ! PROG1OBJS=dapfs.o dapfs_dap.o filenames.o kfifo.o all: $(PROG1) Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** dapfs.c 28 Mar 2008 11:32:52 -0000 1.22 --- dapfs.c 2 Apr 2008 19:16:40 -0000 1.23 *************** *** 27,30 **** --- 27,31 ---- #include <unistd.h> #include <fcntl.h> + #include <assert.h> #include <syslog.h> #include <dirent.h> *************** *** 36,39 **** --- 37,44 ---- #include "dapfs_dap.h" #include "filenames.h" + #include "kfifo.h" + + #define RMS_BUF_SIZE 65536 + struct dapfs_handle *************** *** 48,57 **** /* Last known offset in the file */ off_t offset; ! char *recordbuf; // For when we need to split a record ! int rbuf_len; }; - char prefix[BUFLEN]; static char mountdir[BUFLEN]; int debuglevel = 0; --- 53,63 ---- /* Last known offset in the file */ off_t offset; ! // Circular buffer of data read from VMS ! struct kfifo *kf; }; static char mountdir[BUFLEN]; + static int blockmode = 0; // Default to record mode + char prefix[BUFLEN]; int debuglevel = 0; *************** *** 335,338 **** --- 341,346 ---- memset(h, 0, sizeof(*h)); memset(&fab, 0, sizeof(struct FAB)); + h->kf = kfifo_alloc(RMS_BUF_SIZE*4); + make_vms_filespec(path, vmsname, 0); sprintf(fullname, "%s%s", prefix, vmsname); *************** *** 340,343 **** --- 348,354 ---- fab.fab$b_rfm = RFM_STMLF; + if (blockmode) + fab.fab$b_fac = FAB$M_BRO; + h->rmsh = rms_open(fullname, fi->flags, &fab); if (!h->rmsh) { *************** *** 349,352 **** --- 360,364 ---- return -saved_errno; } + /* Save RMS attributes */ h->org = fab.fab$b_org; *************** *** 361,372 **** } static int dapfs_read(const char *path, char *buf, size_t size, off_t offset, struct fuse_file_info *fi) { int res; ! int got = 0; unsigned int loffset = 0; struct RAB rab; struct dapfs_handle *h = (struct dapfs_handle *)fi->fh; if (debuglevel&1) --- 373,387 ---- } + + static int dapfs_read(const char *path, char *buf, size_t size, off_t offset, struct fuse_file_info *fi) { int res; ! size_t to_copy; unsigned int loffset = 0; struct RAB rab; struct dapfs_handle *h = (struct dapfs_handle *)fi->fh; + char tmpbuf[RMS_BUF_SIZE]; if (debuglevel&1) *************** *** 392,420 **** h->offset = offset; ! /* Throw away saved partial record */ ! if (h->recordbuf) ! free(h->recordbuf); ! h->recordbuf = NULL; } ! // Add in saved record ! if (h->recordbuf) { ! if (debuglevel&2) ! fprintf(stderr, "dapfs_read: adding saved partial record %d bytes\n", h->rbuf_len); ! res = convert_rms_record(h->recordbuf, h->rbuf_len, h); ! memcpy(buf, h->recordbuf, res); ! got += res; ! h->offset += res; ! free(h->recordbuf); ! h->recordbuf = NULL; ! } ! /* This can be quite slow, because it reads records. ! However, it's safer this way as we can make sense of sequential files ! */ ! do { ! res = rms_read(h->rmsh, buf+got, size-got, &rab); if (rms_lasterror(h->rmsh) && debuglevel&2) --- 407,432 ---- h->offset = offset; ! // Throw away cached data. ! kfifo_reset(h->kf); } ! if (debuglevel&1) ! fprintf(stderr, "dapfs_read: kf space available = %d, free=%d, size=%d\n", kfifo_len(h->kf), kfifo_avail(h->kf), size); ! // Fill the buffer so it holds at least enough for us to return ! // a full buffer to FUSE ! while (kfifo_len(h->kf) < size && !rms_lasterror(h->rmsh)) ! { ! if (debuglevel&1) ! fprintf(stderr, "dapfs_read: size=%d, kfifo_len()=%d\n", size, kfifo_len(h->kf)); ! // -2 here allows for convert_rms_record to add delimiters ! res = rms_read(h->rmsh, tmpbuf, kfifo_avail(h->kf) - ((blockmode==0)?2:0), &rab); ! if (debuglevel&1 & !blockmode) ! { ! tmpbuf[res] = '\0'; ! fprintf(stderr, "dapfs_read: res=%d. data='%s'\n", res, tmpbuf); ! } if (rms_lasterror(h->rmsh) && debuglevel&2) *************** *** 424,467 **** return -EOPNOTSUPP; ! // if res == 0 and there is no error then we read ! // an empty record. ! if (res >= 0 && !rms_lasterror(h->rmsh)) { ! res = convert_rms_record(buf+got, res, h); ! got += res; ! h->offset += res; ! } ! if (res < 0 && got) { ! int recordlen = -res; ! int remainderspace = size-got; ! ! // Not enough room for a full record. split it. ! // Read the partial record and return as much as the user ! // requested. Save the remainder for the next read. ! h->recordbuf = malloc(recordlen); ! if (!h->recordbuf) ! return -ENOMEM; ! ! recordlen = rms_read(h->rmsh, h->recordbuf, recordlen, &rab); ! if (recordlen == -1) ! return -errno; ! ! memcpy(buf+got, h->recordbuf, remainderspace); ! ! memmove(h->recordbuf, h->recordbuf + remainderspace, recordlen-remainderspace); ! h->rbuf_len = recordlen-remainderspace; ! h->offset += remainderspace; ! if (debuglevel&2) ! fprintf(stderr, "dapfs_read: saving %d bytes of %d byte partial record\n", recordlen-remainderspace, recordlen); ! if (debuglevel&1) ! fprintf(stderr, "dapfs_read: returning %d, offset = %lld\n", got+remainderspace, h->offset); ! return got + remainderspace; } ! } while (!rms_lasterror(h->rmsh)); ! if (res >= 0) ! res = got; if (res == -1) --- 436,472 ---- return -EOPNOTSUPP; ! // Not enough room in the circular buffer to read another record! ! if (res < 0) { ! res = 0; ! break; ! // assert (res >= 0); // FIXME! ! } ! // if res == 0 and there is no error then we read an empty record. ! // ... this is fine. ! ! // Convert to records (if needed) and add to circular buffer. ! if (res >= 0 && !rms_lasterror(h->rmsh)) { ! if (!blockmode) ! res = convert_rms_record(tmpbuf, res, h); ! kfifo_put(h->kf, tmpbuf, res); ! if (debuglevel&2) ! fprintf(stderr, "dapfs_read: added record of length %d to cbuf. size=%d\n", res, kfifo_len(h->kf)); } + } ! // Copy to target buffer ! to_copy = size; ! if (kfifo_len(h->kf) < to_copy) ! to_copy = kfifo_len(h->kf); ! ! kfifo_get(h->kf, buf, to_copy); ! ! if (res >= 0) { ! h->offset += to_copy; ! res = to_copy; ! } if (res == -1) *************** *** 519,522 **** --- 524,528 ---- ret = rms_close(h->rmsh); + kfifo_free(h->kf); free(h); fi->fh = 0L; *************** *** 607,610 **** --- 613,624 ---- processed = 1; } + if (strncmp("block", optptr, 5) == 0) { + blockmode = 1; + processed = 1; + } + if (strncmp("record", optptr, 6) == 0) { + blockmode = 0; + processed = 1; + } next_tok: t = strtok(NULL, ","); *************** *** 634,638 **** argv[i] = NULL; argv[i-1] = NULL; ! } } else { --- 648,652 ---- argv[i] = NULL; argv[i-1] = NULL; ! } } else { Index: mount.dapfs.8 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/mount.dapfs.8,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** mount.dapfs.8 27 Mar 2008 16:20:56 -0000 1.2 --- mount.dapfs.8 2 Apr 2008 19:16:40 -0000 1.3 *************** *** 1,3 **** ! .TH DAPFS 8 "March 10 2008" "DECnet utilities" .SH NAME --- 1,3 ---- ! .TH DAPFS 8 "April 2 2008" "DECnet utilities" .SH NAME *************** *** 25,31 **** .B username= tells dapfs to use this username for the connection. .B password= tells dapfs to use this password for the connection. ! .B .SH EXAMPLES .br --- 25,41 ---- .B username= tells dapfs to use this username for the connection. + .br .B password= tells dapfs to use this password for the connection. ! .br ! .B block ! tells dapfs to return data using block mode rather than record mode. This will ! return the whole of the internal file structure (eg with sequential files you ! could get odd line endings where the record separators live). It is most useful ! for reading binary data. ! .br ! .B record ! read data using record mode (the default). ! .br .SH EXAMPLES .br |
From: Christine C. <chr...@us...> - 2008-04-02 12:39:31
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28898/dapfs Modified Files: Makefile Log Message: Really fix dapfs build on a clean system Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -r1.11 -r1.12 *** Makefile 27 Mar 2008 21:02:01 -0000 1.11 --- Makefile 2 Apr 2008 12:39:27 -0000 1.12 *************** *** 14,18 **** $(PROG1): $(PROG1OBJS) $(DEPLIBS) ! g++ -o$(PROG1) $(LDFLAGS) $(PROG1OBJS) $(LIBDAP) -L../librms -lrms -lfuse install: --- 14,18 ---- $(PROG1): $(PROG1OBJS) $(DEPLIBS) ! g++ -o$(PROG1) $(LDFLAGS) $(PROG1OBJS) $(LIBDAP) -L../librms -lrms $(LIBDNET) -lfuse install: |
From: Christine C. <chr...@us...> - 2008-04-02 12:39:31
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28898/debian Modified Files: changelog Log Message: Really fix dapfs build on a clean system Index: changelog =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/changelog,v retrieving revision 1.54 retrieving revision 1.55 diff -C2 -r1.54 -r1.55 *** changelog 31 Mar 2008 07:52:09 -0000 1.54 --- changelog 2 Apr 2008 12:39:27 -0000 1.55 *************** *** 1,2 **** --- 1,9 ---- + dnprogs (2.41-1) unstable; urgency=low + + * Fix build of dapfs (again) + Closes: #473934 + + -- Christine Caulfield <Chr...@go...> Wed, 02 Apr 2008 13:12:29 +0100 + dnprogs (2.41) unstable; urgency=low |
From: Christine C. <chr...@us...> - 2008-03-31 07:52:14
|
Update of /cvsroot/linux-decnet/dnprogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8222 Modified Files: Makefile.common Log Message: version 2.41 Index: Makefile.common =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/Makefile.common,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -r1.43 -r1.44 *** Makefile.common 23 Mar 2008 16:15:42 -0000 1.43 --- Makefile.common 31 Mar 2008 07:52:09 -0000 1.44 *************** *** 58,62 **** MAJOR_VERSION=2 ! MINOR_VERSION=40 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) --- 58,62 ---- MAJOR_VERSION=2 ! MINOR_VERSION=41 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) |
From: Christine C. <chr...@us...> - 2008-03-31 07:52:14
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8222/debian Modified Files: changelog Log Message: version 2.41 Index: changelog =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/changelog,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -r1.53 -r1.54 *** changelog 25 Mar 2008 14:00:25 -0000 1.53 --- changelog 31 Mar 2008 07:52:09 -0000 1.54 *************** *** 1,2 **** --- 1,10 ---- + dnprogs (2.41) unstable; urgency=low + + * Many fixes to dapfs, thanks for Andrew Gaffney for testing. + * Fix building of dapfs on systems that didn't have libdap installed. + Closes: #473086 + + -- Christine Caulfield <Chr...@go...> Mon, 31 Mar 2008 08:42:42 +0100 + dnprogs (2.40.1) unstable; urgency=low |
From: Christine C. <chr...@us...> - 2008-03-28 14:20:35
|
Update of /cvsroot/linux-decnet/dnprogs/Documentation In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22016 Modified Files: dapfs.README Log Message: Add some more information Index: dapfs.README =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/Documentation/dapfs.README,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** dapfs.README 10 Mar 2008 12:42:54 -0000 1.3 --- dapfs.README 28 Mar 2008 14:20:31 -0000 1.4 *************** *** 15,18 **** --- 15,19 ---- - mkdir - rmdir (if the protection of the VMS directory does not have Delete set) + - chmod Other things that do not work are chmod and chown as these do not map neatly *************** *** 36,39 **** ! --- 37,54 ---- + BUGS/ANNOYANCES ! Many unix utilities (cat, less and others) get the file size using stat() and ! then read that number of bytes. This causes some odd behaviour with sequential ! files on dapfs that I can't do much about. ! ! The file size that dapfs returns is the actual file size on the VMS host system. ! Because VMS stores files very differently than Linux this might not match ! the size of the file when it arrives at the Linux end, it will always be ! smaller. fuse fills this space with NULs (charactar 0). Writing the file back ! will not lose information, it will be written back as STREAM file format and ! the NULs should disappear. ! ! dapfs will probably oinly work to VMS. I will accept patches to make it work ! with other DECnet operating systems but I very much dount I will have the time ! to do it myself, sorry. \ No newline at end of file |
From: Christine C. <chr...@us...> - 2008-03-28 11:32:55
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24633 Modified Files: dapfs.c Log Message: Check return from rms_read() Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** dapfs.c 27 Mar 2008 21:02:01 -0000 1.21 --- dapfs.c 28 Mar 2008 11:32:52 -0000 1.22 *************** *** 443,446 **** --- 443,449 ---- recordlen = rms_read(h->rmsh, h->recordbuf, recordlen, &rab); + if (recordlen == -1) + return -errno; + memcpy(buf+got, h->recordbuf, remainderspace); |
From: Christine C. <chr...@us...> - 2008-03-28 07:50:27
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7715 Modified Files: dapfs_dap.cc Log Message: Set st_nlink to 1 to keep samba happy. Thanks to Andrew Gaffney for finding and fixing this one Index: dapfs_dap.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs_dap.cc,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -r1.13 -r1.14 *** dapfs_dap.cc 27 Mar 2008 16:20:56 -0000 1.13 --- dapfs_dap.cc 28 Mar 2008 07:50:21 -0000 1.14 *************** *** 192,195 **** --- 192,197 ---- stbuf->st_blksize = am->get_bsz(); stbuf->st_blocks = am->get_alq(); + /* Samba needs this */ + stbuf->st_nlink = 1; } break; |
From: Christine C. <chr...@us...> - 2008-03-27 21:02:47
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26045 Modified Files: Makefile dapfs.c Log Message: Link against correct libdap clear out dapfs_handle when allocated Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** Makefile 27 Mar 2008 16:20:55 -0000 1.10 --- Makefile 27 Mar 2008 21:02:01 -0000 1.11 *************** *** 14,18 **** $(PROG1): $(PROG1OBJS) $(DEPLIBS) ! g++ -o$(PROG1) $(LDFLAGS) $(PROG1OBJS) -L../librms -lrms -lfuse install: --- 14,18 ---- $(PROG1): $(PROG1OBJS) $(DEPLIBS) ! g++ -o$(PROG1) $(LDFLAGS) $(PROG1OBJS) $(LIBDAP) -L../librms -lrms -lfuse install: Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** dapfs.c 27 Mar 2008 16:42:39 -0000 1.20 --- dapfs.c 27 Mar 2008 21:02:01 -0000 1.21 *************** *** 333,336 **** --- 333,337 ---- return -ENOMEM; + memset(h, 0, sizeof(*h)); memset(&fab, 0, sizeof(struct FAB)); make_vms_filespec(path, vmsname, 0); |
From: Christine C. <chr...@us...> - 2008-03-27 16:42:46
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24799 Modified Files: dapfs.c Log Message: Fix debugging inline Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** dapfs.c 27 Mar 2008 16:20:56 -0000 1.19 --- dapfs.c 27 Mar 2008 16:42:39 -0000 1.20 *************** *** 16,19 **** --- 16,20 ---- // # mount -tdapfs alpha1 /mnt/dap // # mount -tdapfs zarqon /mnt/dap -ousername=christine,password=password + // to debug add -odebug as it's own option! #define _FILE_OFFSET_BITS 64 *************** *** 567,571 **** }; ! static void process_options(char *options) { char *scratch = strdup(options); --- 568,572 ---- }; ! static int process_options(char *options) { char *scratch = strdup(options); *************** *** 574,580 **** char *username = NULL; char *optptr; if (!scratch) ! return; t = strtok(scratch, ","); --- 575,582 ---- char *username = NULL; char *optptr; + int processed = 0; if (!scratch) ! return processed; t = strtok(scratch, ","); *************** *** 589,598 **** optptr = t + strspn(t, " "); ! if (strncmp("username=", optptr, 9) == 0) username = strdup(option); ! if (strncmp("password=", optptr, 9) == 0) password = strdup(option); ! if (strncmp("debug=", optptr, 6) == 0) debuglevel = atoi(option); next_tok: t = strtok(NULL, ","); --- 591,606 ---- optptr = t + strspn(t, " "); ! if (strncmp("username=", optptr, 9) == 0) { username = strdup(option); ! processed = 1; ! } ! if (strncmp("password=", optptr, 9) == 0) { password = strdup(option); ! processed = 1; ! } ! if (strncmp("debuglog=", optptr, 9) == 0) { debuglevel = atoi(option); + processed = 1; + } next_tok: t = strtok(NULL, ","); *************** *** 604,607 **** --- 612,616 ---- free(scratch); + return processed; } *************** *** 618,628 **** // -ooptions if (strlen(argv[i]) == 2) { ! argv[i] = NULL; ! process_options(argv[++i]); } else { ! process_options(argv[i] + 2); } - argv[i] = NULL; } } --- 627,639 ---- // -ooptions if (strlen(argv[i]) == 2) { ! if (process_options(argv[++i])) { ! argv[i] = NULL; ! argv[i-1] = NULL; ! } } else { ! if (process_options(argv[i] + 2)) ! argv[i] = NULL; } } } |
From: Christine C. <chr...@us...> - 2008-03-27 16:21:04
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16414 Modified Files: Makefile dapfs.c dapfs_dap.cc dapfs_dap.h mount.dapfs.8 Log Message: Lots of little fixes Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** Makefile 25 Mar 2008 14:00:25 -0000 1.9 --- Makefile 27 Mar 2008 16:20:55 -0000 1.10 *************** *** 11,15 **** all: $(PROG1) ! CFLAGS=-I../include -I ../librms -Wall $(PROG1): $(PROG1OBJS) $(DEPLIBS) --- 11,15 ---- all: $(PROG1) ! CFLAGS=-I../include -I ../librms -Wall $(DFLAGS) $(PROG1): $(PROG1OBJS) $(DEPLIBS) Index: dapfs.c =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** dapfs.c 10 Mar 2008 12:42:54 -0000 1.18 --- dapfs.c 27 Mar 2008 16:20:56 -0000 1.19 *************** *** 53,57 **** char prefix[BUFLEN]; static char mountdir[BUFLEN]; ! static int debug = 0; static const int RAT_DEFAULT = -1; // Use RMS defaults --- 53,57 ---- char prefix[BUFLEN]; static char mountdir[BUFLEN]; ! int debuglevel = 0; static const int RAT_DEFAULT = -1; // Use RMS defaults *************** *** 123,127 **** off_t offset, struct fuse_file_info *fi) { ! if (debug&1) fprintf(stderr, "dapfs_readdir: %s\n", path); --- 123,127 ---- off_t offset, struct fuse_file_info *fi) { ! if (debuglevel&1) fprintf(stderr, "dapfs_readdir: %s\n", path); *************** *** 133,137 **** { char vername[strlen(path)+3]; ! if (debug&1) fprintf(stderr, "dapfs_unlink: %s\n", path); --- 133,137 ---- { char vername[strlen(path)+3]; ! if (debuglevel&1) fprintf(stderr, "dapfs_unlink: %s\n", path); *************** *** 163,167 **** int len; ! if (debug&1) fprintf(stderr, "dapfs_rmdir: %s\n", path); --- 163,167 ---- int len; ! if (debuglevel&1) fprintf(stderr, "dapfs_rmdir: %s\n", path); *************** *** 185,189 **** static int dapfs_rename(const char *from, const char *to) { ! if (debug&1) fprintf(stderr, "dapfs_rename: from: %s to: %s\n", from, to); return dap_rename_file(from, to); --- 185,189 ---- static int dapfs_rename(const char *from, const char *to) { ! if (debuglevel&1) fprintf(stderr, "dapfs_rename: from: %s to: %s\n", from, to); return dap_rename_file(from, to); *************** *** 198,202 **** char fullname[VMSNAME_LEN]; char vmsname[VMSNAME_LEN]; ! if (debug&1) fprintf(stderr, "dapfs_truncate: %s, %lld\n", path, size); --- 198,202 ---- char fullname[VMSNAME_LEN]; char vmsname[VMSNAME_LEN]; ! if (debuglevel&1) fprintf(stderr, "dapfs_truncate: %s, %lld\n", path, size); *************** *** 233,237 **** int len; ! if (debug&1) fprintf(stderr, "dapfs_mkdir: %s\n", path); --- 233,237 ---- int len; ! if (debuglevel&1) fprintf(stderr, "dapfs_mkdir: %s\n", path); *************** *** 273,277 **** long size, free; ! if (debug&1) fprintf(stderr, "dapfs_stafs: %s\n", path); --- 273,277 ---- long size, free; ! if (debuglevel&1) fprintf(stderr, "dapfs_stafs: %s\n", path); *************** *** 302,306 **** char vmsname[VMSNAME_LEN]; ! if (debug&1) fprintf(stderr, "dapfs_mknod: %s\n", path); --- 302,306 ---- char vmsname[VMSNAME_LEN]; ! if (debuglevel&1) fprintf(stderr, "dapfs_mknod: %s\n", path); *************** *** 325,329 **** char vmsname[VMSNAME_LEN]; ! if (debug&1) fprintf(stderr, "open %s, flags=%x\n", path, fi->flags); --- 325,329 ---- char vmsname[VMSNAME_LEN]; ! if (debuglevel&1) fprintf(stderr, "open %s, flags=%x\n", path, fi->flags); *************** *** 368,372 **** struct dapfs_handle *h = (struct dapfs_handle *)fi->fh; ! if (debug&1) fprintf(stderr, "dapfs_read: %s offset=%lld\n", path, offset); --- 368,372 ---- struct dapfs_handle *h = (struct dapfs_handle *)fi->fh; ! if (debuglevel&1) fprintf(stderr, "dapfs_read: %s offset=%lld\n", path, offset); *************** *** 380,384 **** memset(&rab, 0, sizeof(rab)); if (offset && offset != h->offset) { ! if (debug&2) fprintf(stderr, "dapfs_read: new offset is %lld, old was %lld\n", offset, h->offset); loffset = (unsigned int)offset; --- 380,384 ---- memset(&rab, 0, sizeof(rab)); if (offset && offset != h->offset) { ! if (debuglevel&2) fprintf(stderr, "dapfs_read: new offset is %lld, old was %lld\n", offset, h->offset); loffset = (unsigned int)offset; *************** *** 398,402 **** // Add in saved record if (h->recordbuf) { ! if (debug&2) fprintf(stderr, "dapfs_read: adding saved partial record %d bytes\n", h->rbuf_len); --- 398,402 ---- // Add in saved record if (h->recordbuf) { ! if (debuglevel&2) fprintf(stderr, "dapfs_read: adding saved partial record %d bytes\n", h->rbuf_len); *************** *** 416,420 **** res = rms_read(h->rmsh, buf+got, size-got, &rab); ! if (rms_lasterror(h->rmsh) && debug&2) fprintf(stderr, "dapfs_read: res=%d, rms error: %s\n", res, rms_lasterror(h->rmsh)); --- 416,420 ---- res = rms_read(h->rmsh, buf+got, size-got, &rab); ! if (rms_lasterror(h->rmsh) && debuglevel&2) fprintf(stderr, "dapfs_read: res=%d, rms error: %s\n", res, rms_lasterror(h->rmsh)); *************** *** 447,454 **** h->offset += remainderspace; ! if (debug&2) fprintf(stderr, "dapfs_read: saving %d bytes of %d byte partial record\n", recordlen-remainderspace, recordlen); ! if (debug&1) fprintf(stderr, "dapfs_read: returning %d, offset = %lld\n", got+remainderspace, h->offset); --- 447,454 ---- h->offset += remainderspace; ! if (debuglevel&2) fprintf(stderr, "dapfs_read: saving %d bytes of %d byte partial record\n", recordlen-remainderspace, recordlen); ! if (debuglevel&1) fprintf(stderr, "dapfs_read: returning %d, offset = %lld\n", got+remainderspace, h->offset); *************** *** 463,467 **** res = -errno; ! if (debug&1) fprintf(stderr, "dapfs_read: returning %d, offset=%lld\n", res, h->offset); return res; --- 463,467 ---- res = -errno; ! if (debuglevel&1) fprintf(stderr, "dapfs_read: returning %d, offset=%lld\n", res, h->offset); return res; *************** *** 507,511 **** int ret; ! if (debug&1) fprintf(stderr, "dapfs_release: %s\n", path); --- 507,511 ---- int ret; ! if (debuglevel&1) fprintf(stderr, "dapfs_release: %s\n", path); *************** *** 525,529 **** int res; ! if (debug&1) fprintf(stderr, "dapfs_getattr: %s\n", path); --- 525,529 ---- int res; ! if (debuglevel&1) fprintf(stderr, "dapfs_getattr: %s\n", path); *************** *** 543,547 **** } } ! if (debug&1) fprintf(stderr, "dapfs_getattr: returning %d\n", res); return res; --- 543,547 ---- } } ! if (debuglevel&1) fprintf(stderr, "dapfs_getattr: returning %d\n", res); return res; *************** *** 594,599 **** password = strdup(option); if (strncmp("debug=", optptr, 6) == 0) ! debug = atoi(option); ! next_tok: t = strtok(NULL, ","); --- 594,598 ---- password = strdup(option); if (strncmp("debug=", optptr, 6) == 0) ! debuglevel = atoi(option); next_tok: t = strtok(NULL, ","); *************** *** 616,620 **** if (strncmp(argv[i], "-o", 2) == 0) { ! process_options(argv[i] + 2); argv[i] = NULL; } --- 615,627 ---- if (strncmp(argv[i], "-o", 2) == 0) { ! // Allow -o options as well as ! // -ooptions ! if (strlen(argv[i]) == 2) { ! argv[i] = NULL; ! process_options(argv[++i]); ! } ! else { ! process_options(argv[i] + 2); ! } argv[i] = NULL; } *************** *** 638,643 **** int main(int argc, char *argv[]) { ! if (argc < 2) return 1; // This is just the host name at the moment --- 645,653 ---- int main(int argc, char *argv[]) { ! if (argc < 2) { ! fprintf(stderr, "Usage:\n"); ! fprintf(stderr, " mount.dapfs <node> <mountpoint> -ousername=<user>,password=<password>\n"); return 1; + } // This is just the host name at the moment *************** *** 654,658 **** strcat(prefix, "::"); ! if (debug&2) fprintf(stderr, "prefix is now: %s\n", prefix); --- 664,668 ---- strcat(prefix, "::"); ! if (debuglevel&2) fprintf(stderr, "prefix is now: %s\n", prefix); Index: dapfs_dap.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs_dap.cc,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** dapfs_dap.cc 27 Feb 2008 14:03:49 -0000 1.12 --- dapfs_dap.cc 27 Mar 2008 16:20:56 -0000 1.13 *************** *** 41,45 **** } ! static dap_connection conn(0); static int dap_connect(dap_connection &c) --- 41,46 ---- } ! // CC This isn't going to work! ! static dap_connection conn(debuglevel); static int dap_connect(dap_connection &c) *************** *** 272,276 **** off_t offset, struct fuse_file_info *fi) { ! dap_connection c(0); char vmsname[VMSNAME_LEN]; char wildname[strlen(path)+2]; --- 273,277 ---- off_t offset, struct fuse_file_info *fi) { ! dap_connection c(debuglevel); char vmsname[VMSNAME_LEN]; char wildname[strlen(path)+2]; Index: dapfs_dap.h =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/dapfs_dap.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** dapfs_dap.h 27 Oct 2005 08:50:21 -0000 1.4 --- dapfs_dap.h 27 Mar 2008 16:20:56 -0000 1.5 *************** *** 18,19 **** --- 18,20 ---- extern char prefix[]; + extern int debuglevel; Index: mount.dapfs.8 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/mount.dapfs.8,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** mount.dapfs.8 10 Mar 2008 13:01:27 -0000 1.1 --- mount.dapfs.8 27 Mar 2008 16:20:56 -0000 1.2 *************** *** 35,39 **** .br ! # mount -tdapfs alpha1 /mnt/alpha -ousername=SYSTEM,-opassword=field .br Mounts the home directory for the user SYSTEM on node ALPHA1, using the password "field" on /mnt/alpha. --- 35,39 ---- .br ! # mount -tdapfs alpha1 /mnt/alpha -ousername=SYSTEM,password=field .br Mounts the home directory for the user SYSTEM on node ALPHA1, using the password "field" on /mnt/alpha. |
From: Christine C. <chr...@us...> - 2008-03-25 14:08:37
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14604 Modified Files: dnet-common.postinst postinst Log Message: Remove update-modules from postinst files as it is deprecated Index: dnet-common.postinst =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/dnet-common.postinst,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** dnet-common.postinst 7 Feb 2001 21:29:19 -0000 1.2 --- dnet-common.postinst 25 Mar 2008 14:08:33 -0000 1.3 *************** *** 41,45 **** rm -f $TMPFILE - /sbin/update-modules - #DEBHELPER# --- 41,43 ---- Index: postinst =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/postinst,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** postinst 28 Jan 2001 17:28:07 -0000 1.4 --- postinst 25 Mar 2008 14:08:33 -0000 1.5 *************** *** 46,49 **** rm -f $TMPFILE - /sbin/update-modules - --- 46,47 ---- |
From: Christine C. <chr...@us...> - 2008-03-25 14:00:31
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11564/dapfs Modified Files: Makefile Log Message: Use local rms.h include file. Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** Makefile 23 Mar 2008 16:15:42 -0000 1.8 --- Makefile 25 Mar 2008 14:00:25 -0000 1.9 *************** *** 11,16 **** all: $(PROG1) ! CFLAGS=-g -I../include -Wall ! LDFLAGS=-g $(PROG1): $(PROG1OBJS) $(DEPLIBS) --- 11,15 ---- all: $(PROG1) ! CFLAGS=-I../include -I ../librms -Wall $(PROG1): $(PROG1OBJS) $(DEPLIBS) |
From: Christine C. <chr...@us...> - 2008-03-25 14:00:31
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11564/debian Modified Files: changelog Log Message: Use local rms.h include file. Index: changelog =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/changelog,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -r1.52 -r1.53 *** changelog 23 Mar 2008 16:15:43 -0000 1.52 --- changelog 25 Mar 2008 14:00:25 -0000 1.53 *************** *** 1,2 **** --- 1,9 ---- + dnprogs (2.40.1) unstable; urgency=low + + * Fix includes for dapfs + Closes: #472457 + + -- Christine Caulfield <Chr...@go...> Mon, 24 Mar 2008 12:54:33 +0000 + dnprogs (2.40) unstable; urgency=low |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:47
|
Update of /cvsroot/linux-decnet/dnprogs/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/debian Modified Files: changelog control dnet-progs.files Added Files: dnet-common.conffiles dnet-progs.conffiles Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: changelog =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/changelog,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -r1.51 -r1.52 *** changelog 7 Dec 2007 11:03:37 -0000 1.51 --- changelog 23 Mar 2008 16:15:43 -0000 1.52 *************** *** 1,8 **** ! dnprogs (2.39.2) unstable; urgency=low * Fix package building with new dpkg-shlibdeps Closes: #453786 ! -- Patrick Caulfield <pa...@de...> Fri, 07 Dec 2007 11:02:10 +0000 dnprogs (2.39.1) unstable; urgency=low --- 1,18 ---- ! dnprogs (2.40) unstable; urgency=low ! ! * Lots of fixes and improvements to dapfs ! * Include dapfs dinary ! * Allow rms_read to return empty records ! * Fix some man page bugs ! * Change maintainer's name ! ! -- Christine Caulfield <Chr...@go...> Mon, 10 Mar 2008 11:01:44 +0000 ! ! dnprogs (2.39.2) unstable; urgency=low * Fix package building with new dpkg-shlibdeps Closes: #453786 ! -- Christine Caulfield <Chr...@go...> Mon, 10 Mar 2008 11:01:24 +0000 dnprogs (2.39.1) unstable; urgency=low Index: control =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/control,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -r1.30 -r1.31 *** control 24 Nov 2006 16:42:32 -0000 1.30 --- control 23 Mar 2008 16:15:43 -0000 1.31 *************** *** 2,7 **** Section: net Priority: extra ! Maintainer: Patrick Caulfield <pa...@de...> ! Build-Depends: debhelper(>= 4.1.16), libncurses5-dev Standards-Version: 3.5.6 --- 2,7 ---- Section: net Priority: extra ! Maintainer: Christine Caulfield <chr...@go...> ! Build-Depends: debhelper(>= 4.1.16), libncurses5-dev, libfuse-dev Standards-Version: 3.5.6 Index: dnet-progs.files =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/debian/dnet-progs.files,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** dnet-progs.files 5 Apr 2006 07:21:46 -0000 1.6 --- dnet-progs.files 23 Mar 2008 16:15:43 -0000 1.7 *************** *** 9,12 **** --- 9,13 ---- ./usr/sbin/dnetinfo ./usr/sbin/multinet + ./sbin/mount.dapfs ./usr/bin/dndir ./usr/bin/dnsubmit *************** *** 34,37 **** --- 35,39 ---- ./usr/share/man/man8/dnetinfo.8 ./usr/share/man/man8/multinet.8 + ./usr/share/man/man8/mount.dapfs.8 ./usr/share/man/man5/vmsmail.conf.5 ./usr/share/man/man1/dndel.1 |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:47
|
Update of /cvsroot/linux-decnet/dnprogs/phone In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/phone Modified Files: phone.1 phoned.8 Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: phone.1 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/phone/phone.1,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** phone.1 30 Oct 2005 15:14:35 -0000 1.3 --- phone.1 23 Mar 2008 16:15:43 -0000 1.4 *************** *** 17,21 **** terminal (ncurses). If X-Windows is available and compiled into phone then it will be used unless the ! .b -n flag is present on the command line. .br --- 17,21 ---- terminal (ncurses). If X-Windows is available and compiled into phone then it will be used unless the ! .B -n flag is present on the command line. .br *************** *** 30,34 **** commands such as: .br ! 'phone answer' or 'phone marsha::patrick' .br --- 30,34 ---- commands such as: .br ! 'phone answer' or 'phone marsha::chrissie' .br Index: phoned.8 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/phone/phoned.8,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** phoned.8 30 Oct 2005 15:14:35 -0000 1.3 --- phoned.8 23 Mar 2008 16:15:43 -0000 1.4 *************** *** 19,23 **** .I "\-u" Specifies the username that ! .b phoned runs as. By default this is "nobody". If this user does not exist then phoned will run as root which could be a security hole. --- 19,23 ---- .I "\-u" Specifies the username that ! .B phoned runs as. By default this is "nobody". If this user does not exist then phoned will run as root which could be a security hole. |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:47
|
Update of /cvsroot/linux-decnet/dnprogs/libdaemon In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/libdaemon Modified Files: dnet_daemon.3 Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: dnet_daemon.3 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdaemon/dnet_daemon.3,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** dnet_daemon.3 26 Apr 2000 08:22:04 -0000 1.1.1.1 --- dnet_daemon.3 23 Mar 2008 16:15:43 -0000 1.2 *************** *** 47,51 **** itself from the parent process. ! .bt .B dnet_accept() You MUST call this or dnetd_reject() after receiving a valid file descriptor --- 47,51 ---- itself from the parent process. ! .br .B dnet_accept() You MUST call this or dnetd_reject() after receiving a valid file descriptor *************** *** 53,57 **** information to the connecting host. See below for status values. ! .bt .B dnet_reject() If you wish to reject the connection for any reason the call this function --- 53,57 ---- information to the connecting host. See below for status values. ! .br .B dnet_reject() If you wish to reject the connection for any reason the call this function |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:47
|
Update of /cvsroot/linux-decnet/dnprogs/libdnet In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/libdnet Modified Files: dnet_getnode.3 Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: dnet_getnode.3 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdnet/dnet_getnode.3,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** dnet_getnode.3 11 Jan 2005 10:43:44 -0000 1.2 --- dnet_getnode.3 23 Mar 2008 16:15:43 -0000 1.3 *************** *** 19,23 **** Starts the search of the DECnet nodes database (/etc/decnet.conf). It returns an opaque pointer which is passed to the other two functions. ! .bt .B dnet_nextnode() returns the next node name in the list. The pointer is --- 19,23 ---- Starts the search of the DECnet nodes database (/etc/decnet.conf). It returns an opaque pointer which is passed to the other two functions. ! .br .B dnet_nextnode() returns the next node name in the list. The pointer is |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:47
|
Update of /cvsroot/linux-decnet/dnprogs/dnsubmit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/dnsubmit Modified Files: dnsubmit.1 Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: dnsubmit.1 =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dnsubmit/dnsubmit.1,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** dnsubmit.1 14 Mar 2001 19:41:36 -0000 1.3 --- dnsubmit.1 23 Mar 2008 16:15:43 -0000 1.4 *************** *** 29,33 **** .br See the man page for ! .b dncopy for a discussion of VMS file specifications. --- 29,33 ---- .br See the man page for ! .B dncopy for a discussion of VMS file specifications. |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:46
|
Update of /cvsroot/linux-decnet/dnprogs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304 Modified Files: Makefile Makefile.common Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/Makefile,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -r1.30 -r1.31 *** Makefile 7 Dec 2007 11:05:02 -0000 1.30 --- Makefile 23 Mar 2008 16:15:42 -0000 1.31 *************** *** 11,15 **** SUBDIRS=include libdnet libdaemon libdap librms fal dndir dnsubmit dndel \ dncopy apps dntask dnlogin mail phone dnetd libvaxdata dnroute \ ! multinet scripts all: --- 11,15 ---- SUBDIRS=include libdnet libdaemon libdap librms fal dndir dnsubmit dndel \ dncopy apps dntask dnlogin mail phone dnetd libvaxdata dnroute \ ! multinet dapfs scripts all: *************** *** 106,110 **** deb: rm -f Documentation/*~ Documentation/*.bak ! dpkg-buildpackage -rfakeroot # --- 106,110 ---- deb: rm -f Documentation/*~ Documentation/*.bak ! DH_COMPAT=2 dpkg-buildpackage -rfakeroot # Index: Makefile.common =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/Makefile.common,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -r1.42 -r1.43 *** Makefile.common 9 Jan 2008 09:07:33 -0000 1.42 --- Makefile.common 23 Mar 2008 16:15:42 -0000 1.43 *************** *** 58,62 **** MAJOR_VERSION=2 ! MINOR_VERSION=39 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) --- 58,62 ---- MAJOR_VERSION=2 ! MINOR_VERSION=40 VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) *************** *** 70,73 **** --- 70,74 ---- # ifdef DESTDIR + rootprefix=$(DESTDIR)/ prefix=$(DESTDIR)/usr libprefix=$(DESTDIR)/usr |
From: Christine C. <chr...@us...> - 2008-03-23 16:15:46
|
Update of /cvsroot/linux-decnet/dnprogs/dapfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20304/dapfs Modified Files: Makefile Log Message: Fix some Debian issues Fix some manpage sillinesses Debian 2.40 Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/dapfs/Makefile,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** Makefile 10 Mar 2008 13:01:27 -0000 1.7 --- Makefile 23 Mar 2008 16:15:42 -0000 1.8 *************** *** 18,24 **** install: ! install -d $(prefix)/sbin install -d $(manprefix)/man/man8 ! install -m 0755 $(STRIPBIN) $(PROG1) $(prefix)/sbin/mount.dapfs install -m 0644 $(MANPAGES) $(manprefix)/man/man8 --- 18,24 ---- install: ! install -d $(rootprefix)/sbin install -d $(manprefix)/man/man8 ! install -m 0755 $(STRIPBIN) $(PROG1) $(rootprefix)/sbin/mount.dapfs install -m 0644 $(MANPAGES) $(manprefix)/man/man8 |
From: Christine C. <chr...@us...> - 2008-03-11 16:56:54
|
Update of /cvsroot/linux-decnet/dnprogs/apps In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18137 Modified Files: Makefile Log Message: Get rid of dnmount as it's been useless for ages now! Index: Makefile =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/apps/Makefile,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** Makefile 9 Aug 2007 09:26:54 -0000 1.10 --- Makefile 11 Mar 2008 16:56:47 -0000 1.11 *************** *** 13,17 **** PROG4OBJS = dnping.o PROG5OBJS = ctermd.o - PROG6OBJS = dnmount.o PROG7OBJS = rmtermd.o --- 13,16 ---- *************** *** 20,24 **** PROG4 = dnping PROG5 = ctermd - PROG6 = dnmount PROG7 = rmtermd MANPAGES1 = sethost.1 dnping.1 --- 19,22 ---- *************** *** 27,34 **** ALLPROGS=$(PROG1) $(PROG2) $(PROG4) $(PROG5) $(PROG7) - ifeq (/usr/include/linux/dap_fs.h,$(wildcard /usr/include/linux/dap_fs.h)) - ALLPROGS += $(PROG6) - MANPAGES8 += dnmount.8 - endif all: $(ALLPROGS) --- 25,28 ---- *************** *** 49,55 **** $(CC) -o $@ $(CFLAGS) $(PROG5OBJS) $(LIBDAEMON) $(LIBDNET) $(PTSLIBS) - $(PROG6): $(PROG6OBJS) $(DEPLIBDNET) - $(CC) -o $@ $(CFLAGS) $(PROG6OBJS) $(LIBDNET) - $(PROG7): $(PROG7OBJS) $(DEPLIBDNET) $(DEPLIBDAEMON) $(CC) -o $@ $(CFLAGS) $(PROG7OBJS) $(LIBDAEMON) $(LIBDNET) $(PTSLIBS) --- 43,46 ---- *************** *** 59,63 **** clean: ! rm -f $(PROG1) $(PROG2) $(PROG4) $(PROG5) $(PROG6) $(PROG7) \ *.o *.a *.so *~ .depend --- 50,54 ---- clean: ! rm -f $(PROG1) $(PROG2) $(PROG4) $(PROG5) $(PROG7) \ *.o *.a *.so *~ .depend *************** *** 73,77 **** install -m 0755 $(STRIPBIN) $(PROG5) $(prefix)/sbin install -m 0700 setether.sh $(prefix)/sbin/setether - if [ -f $(PROG6) ]; then install -m 0750 $(STRIPBIN) $(PROG6) $(prefix)/sbin; fi install -m 0755 $(STRIPBIN) $(PROG7) $(prefix)/sbin install -m 0644 $(MANPAGES1) $(manprefix)/man/man1 --- 64,67 ---- |
From: Christine C. <chr...@us...> - 2008-03-10 13:18:53
|
Update of /cvsroot/linux-decnet/dnprogs/librms In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6417/librms Modified Files: readwrite.cc Log Message: Allow rms_read to return empty records Index: readwrite.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/librms/readwrite.cc,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** readwrite.cc 26 Feb 2008 16:03:04 -0000 1.10 --- readwrite.cc 10 Mar 2008 13:18:41 -0000 1.11 *************** *** 50,53 **** --- 50,55 ---- ctl->set_krf(rab->rab$b_krf); } + if (rab->rab$w_usz) + ctl->set_usz(rab->rab$w_usz); } |
From: Christine C. <chr...@us...> - 2008-03-10 13:18:28
|
Update of /cvsroot/linux-decnet/dnprogs/libdap In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6390/libdap Modified Files: protocol.cc Log Message: Fix some consts Index: protocol.cc =================================================================== RCS file: /cvsroot/linux-decnet/dnprogs/libdap/protocol.cc,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -r1.15 -r1.16 *** protocol.cc 7 Dec 2007 11:05:03 -0000 1.15 --- protocol.cc 10 Mar 2008 13:18:22 -0000 1.16 *************** *** 606,610 **** filesys.write(c); version.set_byte(0,(unsigned char)7); ! version.set_byte(1,(unsigned char)1); version.set_byte(2,(unsigned char)0); version.set_byte(3,(unsigned char)5); --- 606,610 ---- filesys.write(c); version.set_byte(0,(unsigned char)7); ! version.set_byte(1,(unsigned char)2); version.set_byte(2,(unsigned char)0); version.set_byte(3,(unsigned char)5); |