librazor/rpm.c
changeset 339 159067260aad
parent 335 636f120d1b5e
child 345 edd9b0fa63ca
     1.1 --- a/librazor/rpm.c	Thu Jan 08 17:12:28 2009 +0000
     1.2 +++ b/librazor/rpm.c	Fri Jan 09 12:32:57 2009 +0000
     1.3 @@ -373,7 +373,8 @@
     1.4  
     1.5  	rpm->map = razor_file_get_contents(filename, &rpm->size);
     1.6  	if (!rpm->map) {
     1.7 -		fprintf(stderr, "couldn't get contents of %s (%m)\n", filename);
     1.8 +		fprintf(stderr, "couldn't get contents of %s (%s)\n", filename,
     1.9 +			strerror(errno));
    1.10  		return NULL;
    1.11  	}
    1.12  
    1.13 @@ -459,7 +460,8 @@
    1.14  	installer->stream.avail_out = length;
    1.15  	err = inflate(&installer->stream, Z_SYNC_FLUSH);
    1.16  	if (err != Z_OK && err != Z_STREAM_END) {
    1.17 -		fprintf(stderr, "inflate error: %d (%m)\n", err);
    1.18 +		fprintf(stderr, "inflate error: %d (%s)\n", err,
    1.19 +			strerror(errno));
    1.20  		return -1;
    1.21  	}
    1.22  
    1.23 @@ -484,7 +486,8 @@
    1.24  
    1.25  	err = inflate(&installer->stream, Z_SYNC_FLUSH);
    1.26  	if (err != Z_OK && err != Z_STREAM_END) {
    1.27 -		fprintf(stderr, "inflate error: %d (%m)\n", err);
    1.28 +		fprintf(stderr, "inflate error: %d (%s)\n", err,
    1.29 +			strerror(errno));
    1.30  		return -1;
    1.31  	}
    1.32  
    1.33 @@ -523,7 +526,8 @@
    1.34  			}
    1.35  		}
    1.36  		if (close(fd) < 0) {
    1.37 -			fprintf(stderr, "failed to close %s: %m\n", buffer);
    1.38 +			fprintf(stderr, "failed to close %s: %s\n", buffer,
    1.39 +				strerror(errno));
    1.40  			return -1;
    1.41  		}
    1.42  		return 0;
    1.43 @@ -550,7 +554,7 @@
    1.44  		}
    1.45  		installer->buffer[installer->length] = '\0';
    1.46  		if (symlink((const char *) installer->buffer, buffer)) {
    1.47 -			fprintf(stderr, "failed to create symlink, %m\n");
    1.48 +			perror("failed to create symlink");
    1.49  			return -1;
    1.50  		}
    1.51  		return 0;
    1.52 @@ -606,38 +610,39 @@
    1.53  	}
    1.54  	pid = fork();
    1.55  	if (pid < 0) {
    1.56 -		fprintf(stderr, "failed to fork, %m\n");
    1.57 +		perror("failed to fork");
    1.58  	} else if (pid == 0) {
    1.59  		if (dup2(fd[0], STDIN_FILENO) < 0) {
    1.60 -			fprintf(stderr, "failed redirect stdin, %m\n");
    1.61 +			perror("failed redirect stdin");
    1.62  			exit(-1);
    1.63  		}
    1.64  		if (close(fd[0]) < 0 || close(fd[1]) < 0) {
    1.65 -			fprintf(stderr, "failed to close pipe, %m\n");
    1.66 +			perror("failed to close pipe");
    1.67  			exit(-1);
    1.68  		}
    1.69  		if (chroot(installer->root) < 0) {
    1.70 -			fprintf(stderr, "failed to chroot to %s, %m\n",
    1.71 -				installer->root);
    1.72 +			fprintf(stderr, "failed to chroot to %s: %s\n",
    1.73 +				installer->root, strerror(errno));
    1.74  			exit(-1);
    1.75  		}
    1.76  		printf("executing program %s in chroot %s\n",
    1.77  		       program, installer->root);
    1.78  		if (execl(program, program, NULL)) {
    1.79 -			fprintf(stderr, "failed to exec %s, %m\n", program);
    1.80 +			fprintf(stderr, "failed to exec %s: %s\n", program,
    1.81 +				strerror(errno));
    1.82  			exit(-1);
    1.83  		}
    1.84  	} else {
    1.85  		if (script && razor_write(fd[1], script, strlen(script)) < 0) {
    1.86 -			fprintf(stderr, "failed to pipe script, %m\n");
    1.87 +			perror("failed to pipe script");
    1.88  			return -1;
    1.89  		}
    1.90  		if (close(fd[0]) || close(fd[1])) {
    1.91 -			fprintf(stderr, "failed to close pipe, %m\n");
    1.92 +			perror("failed to close pipe");
    1.93  			return -1;
    1.94  		}
    1.95  		if (wait(&status) < 0) {
    1.96 -			fprintf(stderr, "wait for child failed, %m");
    1.97 +			perror("wait for child failed");
    1.98  			return -1;
    1.99  		}
   1.100  		if (status)
   1.101 @@ -646,7 +651,7 @@
   1.102  #else
   1.103  	fp = popen(program, "w");
   1.104  	if (fwrite(script, strlen(script), 1, fp) != 1) {
   1.105 -		fprintf(stderr, "failed to pipe script, %m\n");
   1.106 +		perror("failed to pipe script");
   1.107  		return -1;
   1.108  	}
   1.109  	pclose(fp);