summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Ulrich Niedermann <hun@n-dimensional.de>2007-12-14 16:11:26 +0100
committerHans Ulrich Niedermann <hun@n-dimensional.de>2007-12-14 16:11:26 +0100
commit3d14ba70a6e3164556a5f984bd7a183df8a1cd00 (patch)
treef773009bebb96be72aefe74525f525c1c16b53b4
parent6749719af90afe9544db14bdd8e2742926f1439c (diff)
downloade2tools-3d14ba70a6e3164556a5f984bd7a183df8a1cd00.tar.gz
e2tools-3d14ba70a6e3164556a5f984bd7a183df8a1cd00.tar.xz
e2tools-3d14ba70a6e3164556a5f984bd7a183df8a1cd00.zip
Make e2tools compile without warnings (Fedora)
This is Fedora's e2tools-fedora-fixes.patch
-rw-r--r--Makefile.am8
-rw-r--r--copy.c6
-rw-r--r--e2tools.h43
-rw-r--r--elist.c5
-rw-r--r--ln.c1
-rw-r--r--ls.c7
-rw-r--r--mkdir.c21
-rw-r--r--mv.c1
-rw-r--r--progress.c3
-rw-r--r--read.c5
-rw-r--r--rm.c4
-rw-r--r--tail.c14
-rw-r--r--util.c3
-rw-r--r--write.c2
14 files changed, 62 insertions, 61 deletions
diff --git a/Makefile.am b/Makefile.am
index ca4a2bc..272db38 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -27,3 +27,11 @@ install-exec-hook:
$(LN_S) -f e2cp $(DESTDIR)$(bindir)/e2mv
$(LN_S) -f e2cp $(DESTDIR)$(bindir)/e2rm
$(LN_S) -f e2cp $(DESTDIR)$(bindir)/e2tail
+
+uninstall-exec-hook:
+ $(RM) -f $(DESTDIR)$(bindir)/e2ln
+ $(RM) -f $(DESTDIR)$(bindir)/e2ls
+ $(RM) -f $(DESTDIR)$(bindir)/e2mkdir
+ $(RM) -f $(DESTDIR)$(bindir)/e2mv
+ $(RM) -f $(DESTDIR)$(bindir)/e2rm
+ $(RM) -f $(DESTDIR)$(bindir)/e2tail
diff --git a/copy.c b/copy.c
index 40522f4..afeeb50 100644
--- a/copy.c
+++ b/copy.c
@@ -239,11 +239,10 @@ copy(int argc, char *argv[])
{
ext2_filsys fs = NULL;
ext2_ino_t root;
- ext2_ino_t orig_cwd;
+ ext2_ino_t orig_cwd = -1;
ext2_ino_t cwd;
char tmpbuf[BUF_SIZE];
char outpath[BUF_SIZE];
- char *last_filesys = NULL;
char *cur_filesys = NULL;
int retval;
int c;
@@ -251,7 +250,7 @@ copy(int argc, char *argv[])
char *dest_dir = NULL;
char *in_file = NULL;
char *out_file = NULL;
- int max_out_len;
+ int max_out_len = -1;
int keep = 0;
int absolute = 0;
int verbose = 0;
@@ -1054,7 +1053,6 @@ read_string(char *inbuf)
char *ptr;
char *boundary;
int c;
- int cnt;
boundary = inbuf + BUF_SIZE - 1;
ptr = inbuf;
diff --git a/e2tools.h b/e2tools.h
index 285f776..d270e16 100644
--- a/e2tools.h
+++ b/e2tools.h
@@ -57,44 +57,45 @@ extern int optreset; /* defined by BSD, but not others */
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
+#include <regex.h>
#include "ext2fs/ext2_fs.h"
#include "ext2fs/ext2fs.h"
#define E2T_FORCE 1
#define E2T_DO_MV 2
-#ifndef COPY_C
+/* from copy.c */
extern long copy(int argc, char *argv[]);
extern int my_strcmp(const void *n1, const void *n2);
-#endif
-#ifdef LN_C
+
+/* from ln.c */
extern long do_ln(int argc, char *argv[]);
extern long create_hard_link(ext2_filsys fs, ext2_ino_t cwd, ext2_ino_t
new_file_ino, char *newfile, int ln_flags);
-#endif
-#ifndef LS_C
+
+/* from ls.c */
extern long do_list_dir(int argc, char *argv[]);
-#endif
-#ifndef MKDIR_C
+
+/* from mkdir.c */
extern long e2mkdir(int argc, char *argv[]);
extern long create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
char *dirname, struct stat *def_stat);
-#endif
+extern long change_cwd(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
+ char *dirname);
-#ifdef MV_C
+
+/* from mv.c */
extern long do_mv(int argc, char *argv[]);
extern long get_file_parts(ext2_filsys fs, ext2_ino_t root, char *pathname,
ext2_ino_t *dir_ino, char **dir_name,
char **base_name);
-#endif
-
-#ifndef READ_C
+/* from read.c */
extern long get_file(ext2_filsys fs, ext2_ino_t root, ext2_ino_t cwd,
char *infile, char *outfile, int keep);
extern long retrieve_data(ext2_filsys fs, ext2_ino_t src, int dest_fd,
@@ -102,17 +103,17 @@ extern long retrieve_data(ext2_filsys fs, ext2_ino_t src, int dest_fd,
ext2_off_t *ret_pos);
extern long read_to_eof(ext2_file_t infile, int dest_fd, ext2_off_t offset,
ext2_off_t *ret_pos);
-#endif
-#ifndef RM_C
+
+/* from rm.c */
extern long e2rm(int argc, char *argv[]);
#endif
-#ifndef TAIL_C
+/* from tail.c */
extern long do_tail(int argc, char *argv[]);
-#endif
-#ifndef UTIL_C
+
+/* from util.c */
extern mode_t ext2_mode_xlate(__u16 lmode);
extern __u16 host_mode_xlate(mode_t hmode);
extern long open_filesystem(char *name, ext2_filsys *fs, ext2_ino_t *root, int
@@ -125,14 +126,12 @@ extern long rm_file(ext2_filsys fs, ext2_ino_t cwd, char *outfile, ext2_ino_t
delfile);
extern long delete_file(ext2_filsys fs, ext2_ino_t inode);
extern void init_stat_buf(struct stat *buf);
-#endif
+extern int is_file_regexp(char *ptr);
+extern regex_t *make_regexp(char *shell);
-#ifndef WRITE_C
+/* from write.c */
extern long
put_file(ext2_filsys fs, ext2_ino_t cwd, char *infile, char *outfile,
ext2_ino_t *outfile_ino, int keep, struct stat *def_stat);
-#endif
-
-#endif
diff --git a/elist.c b/elist.c
index e83ef7d..83bff9e 100644
--- a/elist.c
+++ b/elist.c
@@ -41,6 +41,7 @@
/* Feature Test Switches */
/* Headers */
#include <memory.h>
+#include <stdlib.h>
#include "elist.h"
#ifndef NULL
@@ -79,8 +80,6 @@ elist_delete(elist_t *l, void (*data_free)(void *))
void
elist_free(elist_t *l, void (*data_free)(void *))
{
- elist_t *n;
-
if (l)
{
do
@@ -136,7 +135,7 @@ elist_insert(elist_t *l, void *data)
return(l);
}
-void elist_sort(elist_t *l, int (sort_func)(void *, void *), int reverse)
+void elist_sort(elist_t *l, int (*sort_func)(const void *, const void *), int reverse)
{
int c=0;
elist_t *tl;
diff --git a/ln.c b/ln.c
index e5bda69..b79c44a 100644
--- a/ln.c
+++ b/ln.c
@@ -95,7 +95,6 @@ do_ln(int argc, char *argv[])
int verbose=0;
int force=0;
int symlink=0;
- int num_files;
int errcnt=0;
char *cur_filesys = NULL;
ext2_filsys fs = NULL;
diff --git a/ls.c b/ls.c
index 2d093b7..f9e7e5e 100644
--- a/ls.c
+++ b/ls.c
@@ -143,7 +143,6 @@ static int
list_dir_proc(ext2_ino_t dir, int entry, struct ext2_dir_entry *dirent,
int offset, int blocksize, char *buf, void *private)
{
- struct ext2_inode inode;
char name[EXT2_NAME_LEN];
struct list_dir_struct *ls = (struct list_dir_struct *) private;
int thislen;
@@ -485,7 +484,7 @@ do_list_dir(int argc, char *argv[])
if (ls.options & DELETED_OPT)
flags |= DIRENT_FLAG_INCLUDE_REMOVED;
- if (retval = ext2fs_check_directory(fs, inode))
+ if ((retval = ext2fs_check_directory(fs, inode)))
{
if (retval != EXT2_ET_NO_DIRECTORY)
{
@@ -703,7 +702,7 @@ void short_disp(ls_file_t *info, int *col, int options)
char lbr, rbr;
char tmp[300];
int thislen;
- static max_col_size = 0;
+ static int max_col_size = 0;
if (max_col_size == 0)
{
@@ -1023,9 +1022,7 @@ int creat_time_sort(void *n1, void *n2)
elist_t * remove_ls_dups(elist_t *list)
{
elist_t *start = list;
- elist_t *next;
ls_file_t *cd;
- ls_file_t *nd;
int cnt=0;
while(list != NULL)
diff --git a/mkdir.c b/mkdir.c
index edb791c..35a77ed 100644
--- a/mkdir.c
+++ b/mkdir.c
@@ -281,7 +281,6 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
ext2_ino_t parent; /* the parent directory inode number*/
ext2_ino_t child; /* the inode number of the new directory */
struct ext2_inode inode; /* inode of file/directory dirname */
- char *name; /* basename of the new directory */
long retval; /* function return value */
char *buf;
int len;
@@ -315,7 +314,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
parent = *cwd;
/* allocate memory for the lookups */
- if ((retval = ext2fs_get_mem(fs->blocksize, (void **) &buf)))
+ if ((retval = ext2fs_get_mem(fs->blocksize, (void *) &buf)))
{
fprintf(stderr, "%s\n", error_message(retval));
return retval;
@@ -357,16 +356,16 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
def_stat)))
{
fprintf(stderr,
- "create_dir: error creating directory %s/%s:%d\n",
+ "create_dir: error creating directory %s/%s:%ld\n",
dirname, dname, retval);
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
return(retval);
}
}
else
{
fprintf(stderr, "%s\n", error_message(retval));
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
return retval;
}
}
@@ -380,7 +379,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
&parent)))
{
fprintf(stderr, "%s\n", error_message(retval));
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
return retval;
}
@@ -388,7 +387,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
if ((retval = ext2fs_read_inode(fs, parent, &inode)))
{
fprintf(stderr, "%s\n", error_message(retval));
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
return retval;
}
@@ -397,7 +396,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
{
fprintf(stderr, "create_dir: %s/%s is not a directory: %o\n",
dirname, dname, inode.i_mode);
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
return(-1);
}
}
@@ -407,7 +406,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
*--dname = '/';
dname = ptr;
}
- ext2fs_free_mem((void **) &buf);
+ ext2fs_free_mem((void *) &buf);
*cwd = parent;
}
else
@@ -415,7 +414,7 @@ create_dir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
if ((retval = create_subdir(fs, root, cwd, dirname, def_stat)))
{
fprintf(stderr,
- "create_dir: error creating directory %s:%d\n",
+ "create_dir: error creating directory %s:%ld\n",
dirname, retval);
return(retval);
}
@@ -493,7 +492,7 @@ long create_subdir(ext2_filsys fs, ext2_ino_t root, ext2_ino_t *cwd,
return(0);
}
- /* ok, the directory doesn't exist
+ /* ok, the directory doesn't exist */
/* get a new inode number */
if ((retval = ext2fs_new_inode(fs, parent, LINUX_S_IFDIR | 0755, 0, &child)))
{
diff --git a/mv.c b/mv.c
index a9ee0c6..9c80c79 100644
--- a/mv.c
+++ b/mv.c
@@ -84,7 +84,6 @@ do_mv(int argc, char *argv[])
int verbose=0;
int force=0;
int swap_files=0;
- int num_files;
int errcnt=0;
char *cur_filesys = NULL;
ext2_filsys fs = NULL;
diff --git a/progress.c b/progress.c
index ac44cac..d4c8f7f 100644
--- a/progress.c
+++ b/progress.c
@@ -27,6 +27,7 @@
/* System Headers */
#include <stdio.h>
#include <unistd.h>
+#include <string.h>
#include <sys/stat.h>
#include <sys/time.h>
@@ -154,7 +155,7 @@ void update_progress(unsigned long num_bytes)
if (prog_sbuf != NULL && prog_time != tv.tv_sec)
{
prog_time = tv.tv_sec;
- fprintf(stderr, "%s %10d / %10d\r", prog_file, num_bytes,
+ fprintf(stderr, "%s %10ld / %10ld\r", prog_file, num_bytes,
prog_sbuf->st_size);
fflush(stderr);
}
diff --git a/read.c b/read.c
index e469ccb..d745c8f 100644
--- a/read.c
+++ b/read.c
@@ -9,9 +9,7 @@
*
*/
-static char rcsid[] = "$Id: read.c,v 0.2 2002/08/08 07:58:35 ksheff Exp $";
-
-static char copyright[] = "Copyright 2002 Keith W Sheffield";
+static char __attribute__ ((used)) copyright[] = "Copyright 2002 Keith W Sheffield";
#ifndef READ_C
#define READ_C
@@ -106,7 +104,6 @@ long
get_file(ext2_filsys fs, ext2_ino_t root, ext2_ino_t cwd,
char *infile, char *outfile, int keep)
{
- int fd;
ext2_ino_t src;
int dest;
int retval;
diff --git a/rm.c b/rm.c
index d4b083e..4ccd047 100644
--- a/rm.c
+++ b/rm.c
@@ -244,8 +244,8 @@ e2rm(int argc, char *argv[])
retval = ext2fs_dir_iterate2(gbl_fs, curr_ino,
DIRENT_FLAG_INCLUDE_EMPTY, 0,
rm_dir_proc,
- (void *)
- (verbose) ? &verbose : NULL);
+ (void *)
+ ((verbose) ? &verbose : NULL));
}
else
{
diff --git a/tail.c b/tail.c
index 3bbb621..8f1a01c 100644
--- a/tail.c
+++ b/tail.c
@@ -251,7 +251,6 @@ tail(ext2_filsys *fs_ptr, ext2_ino_t root, char *input, int num_lines,
unsigned int bytes_to_read;
unsigned int bytes_read;
char *ptr;
- off_t pos;
struct ext2_inode inode;
ext2_file_t tail_fd;
ext2_off_t offset;
@@ -320,7 +319,11 @@ tail(ext2_filsys *fs_ptr, ext2_ino_t root, char *input, int num_lines,
if (bytes_to_read != bytes_read - 1)
{
ptr++;
- write(1, ptr, bytes_read - bytes_to_read - 1);
+ if (0 > write(1, ptr, bytes_read - bytes_to_read - 1))
+ {
+ perror("writing bytes to stdout");
+ return -1;
+ }
}
offset = 0; /* make sure we break out of the main loop */
break;
@@ -338,7 +341,12 @@ tail(ext2_filsys *fs_ptr, ext2_ino_t root, char *input, int num_lines,
*/
if (num_lines > 0)
- write(1, buf, bytes_read);
+ {
+ if (0 > write(1, buf, bytes_read)) {
+ perror("writing bytes to stdout");
+ return -1;
+ }
+ }
/* retreive the current position in the file */
if ((retval = ext2fs_file_lseek(tail_fd, 0, EXT2_SEEK_CUR, &cur_pos)))
diff --git a/util.c b/util.c
index 5c8e5ea..0031a45 100644
--- a/util.c
+++ b/util.c
@@ -276,10 +276,9 @@ make_regexp(char *shell)
char *tmpstr;
char *ptr;
static regex_t reg;
- int l;
char c;
- if (NULL == (tmpstr = alloca((strlen(shell)) << 1 + 3)))
+ if (NULL == (tmpstr = alloca(((strlen(shell)) << 1) + 3)))
{
perror("make_regexp");
return(NULL);
diff --git a/write.c b/write.c
index 5f74332..ae79191 100644
--- a/write.c
+++ b/write.c
@@ -9,8 +9,6 @@
* and modified by Robert Sanders <gt8134b@prism.gatech.edu>
*/
-static char rcsid[] = "$Id: write.c,v 0.5 2004/04/07 01:12:30 ksheff Exp $";
-
#ifndef WRITE_C
#define WRITE_C
#endif