-WARNS6 cleanup (68 warnings)
authorPeter Avalos <pavalos@dragonflybsd.org>
Sun, 27 Aug 2006 17:17:23 +0000 (17:17 +0000)
committerPeter Avalos <pavalos@dragonflybsd.org>
Sun, 27 Aug 2006 17:17:23 +0000 (17:17 +0000)
-No need to link in -ltermcap or -lcompat
-ANSI function declarations
-Remove (void) casts for unchecked function returns
-Rename local variables that shadow global declarations
-Actually check if read() and write() are successful, and act
appropriately.  (taken from NetBSD)
-Use struct iovec and readv/writev in varpush() so that the function
declaration isn't variable.  (taken from NetBSD)

14 files changed:
games/mille/Makefile
games/mille/comp.c
games/mille/end.c
games/mille/extern.c
games/mille/init.c
games/mille/mille.c
games/mille/mille.h
games/mille/misc.c
games/mille/move.c
games/mille/print.c
games/mille/roll.c
games/mille/save.c
games/mille/types.c
games/mille/varpush.c

index 50e09b5..b587157 100644 (file)
@@ -1,14 +1,15 @@
 #      @(#)Makefile    8.1 (Berkeley) 5/31/93
 # $FreeBSD: src/games/mille/Makefile,v 1.2.14.1 2001/04/25 09:28:58 ru Exp $
-# $DragonFly: src/games/mille/Makefile,v 1.2 2003/06/17 04:25:24 dillon Exp $
+# $DragonFly: src/games/mille/Makefile,v 1.3 2006/08/27 17:17:23 pavalos Exp $
 
 PROG=  mille
 SRCS=  comp.c end.c extern.c init.c mille.c misc.c move.c print.c \
        roll.c save.c types.c varpush.c
-DPADD= ${LIBCURSES} ${LIBTERMCAP} ${LIBCOMPAT}
-LDADD= -lcurses -ltermcap -lcompat
+DPADD= ${LIBCURSES}
+LDADD= -lcurses
 MAN=   mille.6
 HIDEGAME=hidegame
+WARNS?=        6
 
 .include <bsd.prog.mk>
 
index cd62d30..2446602 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)comp.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/comp.c,v 1.5 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/comp.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/comp.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
@@ -44,7 +44,7 @@
 # define       V_VALUABLE      40
 
 void
-calcmove()
+calcmove(void)
 {
        CARD            card;
        int             *value;
@@ -187,7 +187,7 @@ redoit:
                                diff = End - pp->mileage;
                                /* avoid getting too close */
                                if (Topcard > Deck && cango && diff <= 100
-                                   && diff / Value[card] > count[card]
+                                   && (int)diff / Value[card] > count[card]
                                    && (card == C_25 || diff % 50 == 0)) {
                                        if (card == C_50 && diff - 50 == 25
                                            && count[C_25] > 0)
@@ -400,8 +400,7 @@ play_it:
  * Return true if the given player could conceivably win with his next card.
  */
 bool
-onecard(pp)
-PLAY   *pp;
+onecard(PLAY *pp)
 {
        CARD    bat, spd, card;
 
@@ -433,9 +432,7 @@ PLAY        *pp;
 }
 
 bool
-canplay(pp, op, card)
-PLAY   *pp, *op;
-CARD   card;
+canplay(PLAY *pp, PLAY *op, CARD card)
 {
        switch (card) {
          case C_200:
index e8e693e..b66d49a 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)end.c   8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/end.c,v 1.5 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/end.c,v 1.3 2003/11/12 14:53:53 eirikn Exp $
+ * $DragonFly: src/games/mille/end.c,v 1.4 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
  * @(#)end.c   1.1 (Berkeley) 4/1/82
  */
 
-#ifndef EXTRAP
-void extrapolate (PLAY *);
-void undoex (void);
-#endif
-
 /*
  *     print out the score as if it was final, and add the totals for
  * the end-of-games points to the user who deserves it (if any).
  */
 void
-finalscore(pp)
-       PLAY    *pp; {
+finalscore(PLAY *pp)
+{
 
        int             temp, tot, num;
 
@@ -96,8 +91,8 @@ static int    Last_tot[2];    /* last tot used for extrapolate        */
  * the end-of-games points to the user who deserves it (if any).
  */
 void
-extrapolate(pp)
-       PLAY    *pp; {
+extrapolate(PLAY *pp)
+{
 
        int             x, num, tot, count;
 
@@ -141,7 +136,8 @@ extrapolate(pp)
 }
 
 void
-undoex() {
+undoex(void)
+{
 
        reg PLAY        *pp;
        reg int         i;
index 192beef..cf99bdb 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)extern.c        8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/extern.c,v 1.3 1999/11/30 03:49:01 billf Exp $
- * $DragonFly: src/games/mille/extern.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/extern.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
@@ -48,9 +48,9 @@ bool  Debug,                  /* set if debugging code on             */
        Order,                  /* set if hand should be sorted         */
        Saved;                  /* set if game just saved               */
 
-char   *C_fmt = "%-18.18s",    /* format for printing cards            */
-       *Fromfile = NULL,       /* startup file for game                */
-       Initstr[100],           /* initial string for error field       */
+char   *Fromfile = NULL,       /* startup file for game                */
+       Initstr[100];           /* initial string for error field       */
+const char *C_fmt = "%-18.18s",        /* format for printing cards            */
        *_cn[NUM_CARDS] = {     /* Card name buffer                     */
                "",
                "25",
index 8906a36..a4a0bd4 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)init.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/init.c,v 1.5 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/init.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/init.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
@@ -42,7 +42,8 @@
  */
 
 void
-init() {
+init(void)
+{
 
        PLAY    *pp;
        int     i, j;
@@ -86,7 +87,8 @@ init() {
 }
 
 void
-shuffle() {
+shuffle(void)
+{
 
        int             i, r;
        CARD    temp;
@@ -105,7 +107,8 @@ shuffle() {
 }
 
 void
-newboard() {
+newboard(void)
+{
 
        int     i;
        PLAY    *pp;
@@ -164,7 +167,8 @@ newboard() {
 }
 
 void
-newscore() {
+newscore(void)
+{
 
        int             i, new;
        PLAY    *pp;
index 1b68386..9efcb11 100644 (file)
@@ -31,7 +31,7 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/games/mille/mille.c,v 1.10 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/mille.c,v 1.4 2006/01/22 03:43:37 swildner Exp $
+ * $DragonFly: src/games/mille/mille.c,v 1.5 2006/08/27 17:17:23 pavalos Exp $
  *
  * @(#) Copyright (c) 1982, 1993 The Regents of the University of California.  All rights reserved.
  * @(#)mille.c 8.1 (Berkeley) 5/31/93
@@ -51,9 +51,8 @@
 static void usage (void);
 
 int
-main(ac, av)
-       int     ac;
-       char    *av[]; {
+main(int ac, char *av[])
+{
 
        bool    restore;
 
@@ -129,7 +128,7 @@ main(ac, av)
 }
 
 static void
-usage()
+usage(void)
 {
        fprintf(stderr, "usage: mille [restore_file]\n");
        exit(1);
@@ -140,23 +139,23 @@ usage()
  * quit.
  */
 void
-rub(sig)
-int sig; {
+rub(__unused int sig)
+{
 
-       (void)signal(SIGINT, SIG_IGN);
+       signal(SIGINT, SIG_IGN);
        if (getyn(REALLYPROMPT))
                die(0);
-       (void)signal(SIGINT, rub);
+       signal(SIGINT, rub);
 }
 
 /*
  *     Time to go beddy-by
  */
 void
-die(code)
-int code; {
+die(int code)
+{
 
-       (void)signal(SIGINT, SIG_IGN);
+       signal(SIGINT, SIG_IGN);
        if (outf)
                fflush(outf);
        mvcur(0, COLS - 1, LINES - 1, 0);
index 9cf2624..caae9ab 100644 (file)
@@ -33,7 +33,7 @@
  *     @(#)mille.h     8.1 (Berkeley) 5/31/93
  *
  * $FreeBSD: src/games/mille/mille.h,v 1.7 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/mille.h,v 1.5 2006/01/22 03:43:37 swildner Exp $
+ * $DragonFly: src/games/mille/mille.h,v 1.6 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      <sys/types.h>
@@ -215,7 +215,8 @@ typedef struct {
 
 extern bool    Debug, Finished, Next, On_exit, Order, Saved;
 
-extern char    *C_fmt, **C_name, *Fromfile, Initstr[];
+extern char    *Fromfile, Initstr[];
+extern const char      *C_fmt, **C_name;
 
 extern int     Card_no, End, Handstart, Movetype, Numcards[], Numgos,
                Numneed[], Numseen[NUM_CARDS], Play, Value[], Window;
@@ -240,7 +241,7 @@ bool        check_ext (bool);
 void   check_more (void);
 void   die (int);
 void   domove (void);
-bool   error (char *, ...);
+bool   error (const char *, ...);
 #ifdef EXTRAP
 void   extrapolate (PLAY *);
 #endif
@@ -263,7 +264,7 @@ CARD        safety (CARD);
 bool   save (void);
 void   shuffle (void);
 void   sort (CARD *);
-void   varpush (int, int (*)());
+bool   varpush (int, ssize_t (*)(int, const struct iovec *, int));
 #ifdef EXTRAP
 void   undoex (void);
 #endif
index 4bf9f25..7f02f6d 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)misc.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/misc.c,v 1.8.2.1 2001/06/13 13:52:14 dwmalone Exp $
- * $DragonFly: src/games/mille/misc.c,v 1.3 2006/01/22 03:43:37 swildner Exp $
+ * $DragonFly: src/games/mille/misc.c,v 1.4 2006/08/27 17:17:23 pavalos Exp $
  */
 
 #include <sys/file.h>
@@ -55,7 +55,7 @@
 
 /* VARARGS1 */
 bool
-error(char *str, ...)
+error(const char *str, ...)
 {
        va_list arg;
 
@@ -72,7 +72,7 @@ error(char *str, ...)
 }
 
 CARD
-getcard()
+getcard(void)
 {
        int             c, c1;
 
@@ -121,8 +121,8 @@ cont:               ;
 }
 
 bool
-check_ext(forcomp)
-bool   forcomp; {
+check_ext(bool forcomp)
+{
 
 
        if (End == 700)
@@ -176,8 +176,8 @@ done:
  * also allowed.  Return TRUE if the answer was yes, FALSE if no.
  */
 bool
-getyn(promptno)
-int    promptno; {
+getyn(int promptno)
+{
 
        char    c;
 
@@ -221,7 +221,7 @@ int promptno; {
  * it.  Exit appropriately.
  */
 void
-check_more()
+check_more(void)
 {
 
        On_exit = TRUE;
@@ -249,7 +249,7 @@ check_more()
 }
 
 char
-readch()
+readch(void)
 {
        int             cnt;
        static char     c;
index e9c64ce..994a981 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)move.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/move.c,v 1.6 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/move.c,v 1.4 2006/01/22 03:43:37 swildner Exp $
+ * $DragonFly: src/games/mille/move.c,v 1.5 2006/08/27 17:17:23 pavalos Exp $
  */
 
 #include <termios.h>
@@ -62,7 +62,7 @@ static int haspicked (PLAY *);
 static bool playcard (PLAY *);
 
 void
-domove()
+domove(void)
 {
        PLAY    *pp;
        int             i, j;
@@ -166,7 +166,8 @@ acc:
  * the game is over
  */
 static void
-check_go() {
+check_go(void)
+{
 
        CARD    card;
        PLAY    *pp, *op;
@@ -197,8 +198,7 @@ check_go() {
 }
 
 static bool
-playcard(pp)
-PLAY   *pp;
+playcard(PLAY *pp)
 {
        int             v;
        CARD    card;
@@ -347,7 +347,7 @@ protected:
 }
 
 static void
-getmove()
+getmove(void)
 {
        char    c;
 #ifdef DEBUG
@@ -481,8 +481,8 @@ ret:
  * return whether or not the player has picked
  */
 static int
-haspicked(pp)
-PLAY   *pp; {
+haspicked(PLAY *pp)
+{
 
        int     card;
 
@@ -501,8 +501,8 @@ PLAY        *pp; {
 }
 
 void
-account(card)
-CARD   card; {
+account(CARD card)
+{
 
        CARD    oppos;
 
@@ -527,10 +527,9 @@ CARD       card; {
 }
 
 void
-prompt(promptno)
-int    promptno;
+prompt(int promptno)
 {
-       static char     *names[] = {
+       static const char       *names[] = {
                                ">>:Move:",
                                "Really?",
                                "Another hand?",
@@ -559,8 +558,7 @@ int promptno;
 }
 
 void
-sort(hand)
-CARD   *hand;
+sort(CARD *hand)
 {
        CARD    *cp, *tp;
        CARD    temp;
index 7240d27..38b3a25 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)print.c 8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/print.c,v 1.5 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/print.c,v 1.3 2003/11/12 14:53:53 eirikn Exp $
+ * $DragonFly: src/games/mille/print.c,v 1.4 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
@@ -48,7 +48,8 @@ static void show_card (int, int, CARD, CARD *);
 static void show_score (int, int, int, int *);
 
 void
-prboard() {
+prboard(void)
+{
 
        PLAY    *pp;
        int     i, j, k, temp;
@@ -66,7 +67,7 @@ prboard() {
                show_card(14, temp, pp->battle, &pp->sh_battle);
                show_card(16, temp, pp->speed, &pp->sh_speed);
                for (i = C_25; i <= C_200; i++) {
-                       char    *name;
+                       const char      *name;
                        int             end;
 
                        if (pp->nummiles[i] == pp->sh_nummiles[i])
@@ -103,9 +104,7 @@ prboard() {
  *     Show the given card if it is different from the last one shown
  */
 static void
-show_card(y, x, c, lc)
-int            y, x;
-CARD   c, *lc;
+show_card(int y, int x, CARD c, CARD *lc)
 {
        if (c == *lc)
                return;
@@ -117,11 +116,11 @@ CARD      c, *lc;
 static char    Score_fmt[] = "%4d";
 
 void
-prscore(for_real)
-bool   for_real; {
+prscore(bool for_real)
+{
 
        PLAY    *pp;
-       int             x;
+       int             x = for_real;   /* uses for_real #ifndef EXTRAP */
 
        stdscr = Score;
        for (pp = Player; pp < &Player[2]; pp++) {
@@ -164,9 +163,7 @@ bool        for_real; {
  *     showed it.
  */
 static void
-show_score(y, x, s, ls)
-int            y, x;
-int    s, *ls;
+show_score(int y, int x, int s, int *ls)
 {
        if (s == *ls)
                return;
index 631bae1..00d738f 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)roll.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/roll.c,v 1.6 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/roll.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/roll.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
@@ -45,8 +45,8 @@
  */
 
 int
-roll(ndie, nsides)
-int    ndie, nsides; {
+roll(int ndie, int nsides)
+{
 
        int                     tot;
 
index 01ec6f1..d8a68fd 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)save.c  8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/save.c,v 1.6 1999/12/12 06:17:24 billf Exp $
- * $DragonFly: src/games/mille/save.c,v 1.4 2006/01/22 03:43:37 swildner Exp $
+ * $DragonFly: src/games/mille/save.c,v 1.5 2006/08/27 17:17:23 pavalos Exp $
  */
 
 #include <sys/types.h>
@@ -60,17 +60,20 @@ typedef     struct stat     STAT;
 
 /*
  *     This routine saves the current game for use at a later date
+ *     Returns whether or not it could be done.
  */
 
 bool
-save() {
+save(void)
+{
 
        char            *sp;
-       int             outf;
+       int             outfd;
        time_t          *tp;
        char            buf[80];
        time_t          tme;
        STAT            junk;
+       bool            retval;
 
        sp = NULL;
        tp = &tme;
@@ -117,24 +120,27 @@ over:
            && getyn(OVERWRITEFILEPROMPT) == FALSE))
                return FALSE;
 
-       if ((outf = creat(buf, 0644)) < 0) {
+       if ((outfd = creat(buf, 0644)) < 0) {
                error(strerror(errno));
                return FALSE;
        }
        mvwaddstr(Score, ERR_Y, ERR_X, buf);
        wrefresh(Score);
        time(tp);                       /* get current time             */
-       strcpy(buf, ctime(tp));
-       sp = buf;
-       for (; *sp != '\n'; sp++)
-               continue;
-       *sp = '\0';
-       varpush(outf, write);
-       close(outf);
-       wprintw(Score, " [%s]", buf);
+       retval = varpush(outfd, writev);
+       close(outfd);
+       if (retval == FALSE)
+               unlink(buf);
+       else {
+               strcpy(buf, ctime(tp));
+               for (sp = buf; *sp != '\n'; sp++)
+                       continue;
+               *sp = '\0';
+               wprintw(Score, " [%s]", buf);
+       }
        wclrtoeol(Score);
        wrefresh(Score);
-       return TRUE;
+       return retval;
 }
 
 /*
@@ -143,8 +149,8 @@ over:
  * be cleaned up before the game starts.
  */
 bool
-rest_f(file)
-char   *file; {
+rest_f(char *file)
+{
 
        char    *sp;
        int             inf;
@@ -159,7 +165,7 @@ char        *file; {
                perror(file);
                exit(1);
        }
-       varpush(inf, read);
+       varpush(inf, readv);
        close(inf);
        strcpy(buf, ctime(&sbuf.st_mtime));
        for (sp = buf; *sp != '\n'; sp++)
@@ -168,7 +174,7 @@ char        *file; {
        /*
         * initialize some necessary values
         */
-       (void)sprintf(Initstr, "%s [%s]\n", file, buf);
+       sprintf(Initstr, "%s [%s]\n", file, buf);
        Fromfile = file;
        return !On_exit;
 }
index 00cc3f6..3cb63a5 100644 (file)
@@ -32,7 +32,7 @@
  *
  * @(#)types.c 8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/types.c,v 1.5 1999/12/12 06:17:25 billf Exp $
- * $DragonFly: src/games/mille/types.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/types.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
 # include      "mille.h"
  */
 
 int
-isrepair(card)
-CARD   card; {
+isrepair(CARD card)
+{
 
        return card == C_GAS || card == C_SPARE || card == C_REPAIRS || card == C_INIT;
 }
 
 CARD
-safety(card)
-CARD   card; {
+safety(CARD card)
+{
 
        switch (card) {
          case C_EMPTY:
index 88c7578..24a1f7e 100644 (file)
  *
  * @(#)varpush.c       8.1 (Berkeley) 5/31/93
  * $FreeBSD: src/games/mille/varpush.c,v 1.6 1999/12/12 06:17:25 billf Exp $
- * $DragonFly: src/games/mille/varpush.c,v 1.2 2003/06/17 04:25:24 dillon Exp $
+ * $DragonFly: src/games/mille/varpush.c,v 1.3 2006/08/27 17:17:23 pavalos Exp $
  */
 
+# include      <errno.h>
 # include      <paths.h>
 # include      "mille.h"
 
 
 /*
  *     push variables around via the routine func() on the file
- * channel file.  func() is either read or write.
+ * channel file.  func() is either readv or writev.
  */
-void
-varpush(file, func)
-int    file;
-int    (*func)(); {
+bool
+varpush(int file, ssize_t (*func)(int, const struct iovec *, int))
+{
 
        int     temp;
+       const struct iovec iov[] = {
+       { (void *) &Debug,      sizeof Debug },
+       { (void *) &Finished,   sizeof Finished },
+       { (void *) &Order,      sizeof Order },
+       { (void *) &End,        sizeof End },
+       { (void *) &On_exit,    sizeof On_exit },
+       { (void *) &Handstart,  sizeof Handstart },
+       { (void *) &Numgos,     sizeof Numgos },
+       { (void *)  Numseen,    sizeof Numseen },
+       { (void *) &Play,       sizeof Play },
+       { (void *) &Window,     sizeof Window },
+       { (void *)  Deck,       sizeof Deck },
+       { (void *) &Discard,    sizeof Discard },
+       { (void *)  Player,     sizeof Player }
+       };
 
-       (*func)(file, (char *) &Debug, sizeof Debug);
-       (*func)(file, (char *) &Finished, sizeof Finished);
-       (*func)(file, (char *) &Order, sizeof Order);
-       (*func)(file, (char *) &End, sizeof End);
-       (*func)(file, (char *) &On_exit, sizeof On_exit);
-       (*func)(file, (char *) &Handstart, sizeof Handstart);
-       (*func)(file, (char *) &Numgos, sizeof Numgos);
-       (*func)(file, (char *)  Numseen, sizeof Numseen);
-       (*func)(file, (char *) &Play, sizeof Play);
-       (*func)(file, (char *) &Window, sizeof Window);
-       (*func)(file, (char *)  Deck, sizeof Deck);
-       (*func)(file, (char *) &Discard, sizeof Discard);
-       (*func)(file, (char *)  Player, sizeof Player);
-       if (func == read) {
-               read(file, (char *) &temp, sizeof temp);
+       if (((func)(file, iov, sizeof(iov) /sizeof(iov[0]))) < 0) {
+               error(strerror(errno));
+               return FALSE;
+       }
+
+       if (func == readv) {
+               if ((read(file, (void *) &temp, sizeof temp)) < 0) {
+                       error(strerror(errno));
+                       return FALSE;
+               }
                Topcard = &Deck[temp];
 #ifdef DEBUG
                if (Debug) {
@@ -86,6 +96,10 @@ over:
        }
        else {
                temp = Topcard - Deck;
-               write(file, (char *) &temp, sizeof temp);
+               if ((write(file, (void *) &temp, sizeof temp)) < 0) {
+                       error(strerror(errno));
+                       return FALSE;
+               }
        }
+       return TRUE;
 }