int n, try=5, status;
int port;
char *proxy;
+ char *dir_prefix=NULL;
char *s, buf[512];
struct stat sbuf;
char extra_headers[1024];
/*
* Crack command line.
*/
- while ((n = getopt_long(argc, argv, "cqO:", long_options, &option_index)) != EOF) {
+ while ((n = getopt_long(argc, argv, "cqO:P:", long_options, &option_index)) != EOF) {
switch (n) {
case 'c':
++do_continue;
break;
+ case 'P':
+ dir_prefix = optarg;
+ break;
case 'q':
quiet_flag = TRUE;
break;
}
}
- fprintf(stderr, "extra_headers='%s'\n", extra_headers);
if (argc - optind != 1)
show_usage();
output = stdout;
quiet_flag = TRUE;
} else {
+ fname_out = concat_path_file(dir_prefix, fname_out);
output = xfopen(fname_out, (do_continue ? "a" : "w"));
}
if (do_continue)
fprintf(sfp, "Range: bytes=%ld-\r\n", beg_range);
if(extra_headers_left < sizeof(extra_headers))
- fprintf(sfp,extra_headers);
+ fputs(extra_headers,sfp);
fprintf(sfp,"Connection: close\r\n\r\n");
/*
memset(&s_in, 0, sizeof(s_in));
s_in.sin_family = AF_INET;
- if ((hp = (struct hostent *) gethostbyname(host)) == NULL)
- error_msg_and_die("cannot resolve %s", host);
+ hp = xgethostbyname(host);
memcpy(&s_in.sin_addr, hp->h_addr_list[0], hp->h_length);
s_in.sin_port = htons(port);
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: wget.c,v 1.39 2001/05/15 17:51:37 andersen Exp $
+ * $Id: wget.c,v 1.42 2001/06/21 19:45:06 andersen Exp $
*/