summaryrefslogtreecommitdiff
blob: fe804901528c46541bd6c69856b0b20cd2a61f5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Subsequent snprintf calls treat the buffer as having size GETREQSIZ, so
drop the subtraction. Fix for http://bugs.gentoo.org/337874 by Kevin Pyle 

--- aget-0.4.1/Aget.c
+++ aget-0.4.1/Aget.c
@@ -86,7 +86,7 @@
 	}
 
 	/* Get the starting time, prepare GET format string, and start the threads */
-	fmt = (char *)calloc(GETREQSIZ - 2, sizeof(char));
+	fmt = (char *)calloc(GETREQSIZ, sizeof(char));
 	time(&t_start);
 	for (i = 0; i < nthreads; i++) {
 		soffset = calc_offset(req->clength, i, nthreads);
@@ -139,7 +139,7 @@
 
 	nthreads = h->nthreads;
 
-	fmt = (char *)calloc(GETREQSIZ - 2, sizeof(char));
+	fmt = (char *)calloc(GETREQSIZ, sizeof(char));
 
 	wthread = (struct thread_data *)malloc(nthreads * sizeof(struct thread_data));
 	memcpy(req, &h->req, sizeof(struct request));

Fix useless memset that set 0 bytes to the value of GETRECVSIZ, rather
than setting GETRECVSIZ bytes to the value of 0. By Kevin Pyle.

--- aget-0.4.1/Download.c
+++ aget-0.4.1/Download.c
@@ -107,7 +107,7 @@
 	pthread_mutex_unlock(&bwritten_mutex);
 
 	while (td->offset < foffset) {
-		memset(rbuf, GETRECVSIZ, 0);
+		memset(rbuf, 0, GETRECVSIZ);
 		dr = recv(sd, rbuf, GETRECVSIZ, 0);
 		if ((td->offset + dr) > foffset)
 			dw = pwrite(td->fd, rbuf, foffset - td->offset, td->offset);
--- aget-0.4.1/Head.c	2010-09-20 03:41:27.236019179 +0200
+++ aget-0.4.1/Head.c	2010-09-20 03:43:00.087098655 +0200
@@ -1,5 +1,4 @@
 #ifndef SOLARIS
-#define _XOPEN_SOURCE 500
 #endif
 
 
--- aget-0.4.1/Misc.c
+++ aget-0.4.1/Misc.c
@@ -129,7 +129,7 @@
 	fprintf(stderr, "\t\t-h this screen\n");
 	fprintf(stderr, "\t\t-v version info\n");
 	fprintf(stderr, "\n");
-	fprintf(stderr, "http//www.enderunix.org/aget/\n");
+	fprintf(stderr, "http://www.enderunix.org/aget/\n");
 }
 
 /* reverse a given string	*/
--- aget-0.4.1/Makefile
+++ aget-0.4.1/Makefile
@@ -2,20 +2,21 @@
 # http://www.enderunix.org/aget/
 
 OBJS = main.o Aget.o Misc.o Head.o Signal.o Download.o Resume.o
-CFLAGS = -g -W
-LDFLAGS = -pthread
+CFLAGS += 
+LDFLAGS += -pthread
 CC = gcc
 STRIP = strip
 
-all: $(OBJS)
-	$(CC) -o aget $(OBJS) $(LDFLAGS)
+all: aget
+aget: $(OBJS)
+	$(LINK.o) $^ $(OUTPUT_OPTION)
 
 strip: $(all)
 	$(STRIP) aget
 	
 install:
-	cp -f aget /usr/local/bin/aget
-	cp -f aget.1 /usr/share/man/man1/
+	install -m 0755 -D aget $(DESTDIR)/usr/bin/aget
+	install -m 0644 -D aget.1 $(DESTDIR)/usr/share/man/man1/aget.1
 
 clean: 
 	rm -f aget *.o core.* *~