home *** CD-ROM | disk | FTP | other *** search
- *** sigsetmask.c.orig Fri Oct 30 16:00:00 1992
- --- sigsetmask.c Fri Oct 30 16:00:33 1992
- ***************
- *** 0 ****
- --- 1,11 ----
- + #include <signal.h>
- +
- + sigset_t sigsetmask( sigset_t mask )
- + {
- + sigset_t *set;
- + sigset_t *oset;
- +
- + set = &mask;
- + sigprocmask(SIG_SETMASK,set,oset);
- + return (*oset);
- + }
- *** ftruncate.c.orig Thu Nov 5 10:08:17 1992
- --- ftruncate.c Thu Nov 5 10:07:54 1992
- ***************
- *** 0 ****
- --- 1,38 ----
- + /*
- + * Truncate a file or a file descriptor
- + */
- +
- + #include <stdio.h>
- + #include <sys/types.h>
- + #include <fcntl.h>
- +
- + ftruncate(fd, length)
- + int fd;
- + off_t length;
- + {
- + FILE *tmpfile(), *tempf, *orig;
- + off_t i;
- +
- + if ((orig = fdopen(fd, "r")) == NULL) {
- + perror("fdopen");
- + return -1;
- + }
- + if ((tempf = tmpfile()) == NULL)
- + return -1;
- +
- + for (i = 0L; i < length; i++)
- + putc(getc(orig), tempf);
- +
- + copyback(tempf, orig);
- + fclose(tempf);
- + fclose(orig);
- + }
- +
- + copyback(orig, new)
- + FILE *orig, *new;
- + {
- + char c;
- +
- + while ((c = getc(orig)) != EOF)
- + putc(c, new);
- + }
- *** Makefile.orig Thu Nov 5 11:20:06 1992
- --- Makefile Thu Nov 5 11:23:22 1992
- ***************
- *** 6,10 ****
- install -s qsubst $(BINDIR)
- install qsubst.1 $(MANDIR)
-
- ! qsubst: qsubst.c
- ! $(CC) $(CFLAGS) -o qsubst qsubst.c -ltermcap
- --- 6,19 ----
- install -s qsubst $(BINDIR)
- install qsubst.1 $(MANDIR)
-
- ! qsubst: qsubst.c sigsetmask.o ftruncate.o sigblock.o
- ! $(CC) $(CFLAGS) -o qsubst sigsetmask.o ftruncate.o sigblock.o qsubst.c -ltermcap
- !
- ! sigblock.o: sigblock.c
- ! $(CC) -c -O sigblock.c
- !
- ! sigsetmask.o: sigsetmask.c
- ! $(CC) -c -O sigsetmask.c
- !
- ! ftruncate.o: ftruncate.c
- ! $(CC) -c -0 ftruncate.c
- *** sigblock.c.orig Thu Nov 5 11:26:22 1992
- --- sigblock.c Thu Nov 5 11:24:10 1992
- ***************
- *** 0 ****
- --- 1,11 ----
- + #include <signal.h>
- +
- + sigset_t sigblock( sigset_t mask )
- + {
- + sigset_t *omask;
- +
- + /* under bsd it is used like this: mask = sigblock( sigmask(sig) ); */
- + sigprocmask(SIG_SETMASK, &mask, omask);
- + return *omask;
- + }
- +
-