49 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| --- usr.sbin/portsnap/portsnap/portsnap.sh.orig
 | |
| +++ usr.sbin/portsnap/portsnap/portsnap.sh
 | |
| @@ -646,7 +646,7 @@
 | |
|  # Verify a list of files
 | |
|  fetch_snapshot_verify() {
 | |
|  	while read F; do
 | |
| -		if [ "`gunzip -c snap/${F} | ${SHA256} -q`" != ${F} ]; then
 | |
| +		if [ "`gunzip -c < snap/${F}.gz | ${SHA256} -q`" != ${F} ]; then
 | |
|  			echo "snapshot corrupt."
 | |
|  			return 1
 | |
|  		fi
 | |
| @@ -681,11 +681,18 @@
 | |
|  	cut -f 2 -d '|' tINDEX.new | fetch_snapshot_verify || return 1
 | |
|  # Extract the index
 | |
|  	rm -f INDEX.new
 | |
| -	gunzip -c snap/`look INDEX tINDEX.new |
 | |
| +	gunzip -c < snap/`look INDEX tINDEX.new |
 | |
|  	    cut -f 2 -d '|'`.gz > INDEX.new
 | |
|  	fetch_index_sanity || return 1
 | |
|  # Verify the snapshot contents
 | |
|  	cut -f 2 -d '|' INDEX.new | fetch_snapshot_verify || return 1
 | |
| +	cut -f 2 -d '|' tINDEX.new INDEX.new | sort -u > files.expected
 | |
| +	find snap -mindepth 1 | sed -E 's^snap/(.*)\.gz^\1^' | sort > files.snap
 | |
| +	if ! cmp -s files.expected files.snap; then
 | |
| +		echo "unexpected files in snapshot."
 | |
| +		return 1
 | |
| +	fi
 | |
| +	rm files.expected files.snap
 | |
|  	echo "done."
 | |
|  
 | |
|  # Move files into their proper locations
 | |
| @@ -777,7 +784,7 @@
 | |
|  
 | |
|  # Extract the index
 | |
|  	echo -n "Extracting index... " 1>${QUIETREDIR}
 | |
| -	gunzip -c files/`look INDEX tINDEX.new |
 | |
| +	gunzip -c < files/`look INDEX tINDEX.new |
 | |
|  	    cut -f 2 -d '|'`.gz > INDEX.new
 | |
|  	fetch_index_sanity || return 1
 | |
|  
 | |
| @@ -897,7 +904,7 @@
 | |
|  		echo -n "$1 not provided by portsnap server; "
 | |
|  		echo "$2 not being generated."
 | |
|  	else
 | |
| -	gunzip -c "${WORKDIR}/files/`look $1 ${WORKDIR}/tINDEX |
 | |
| +	gunzip -c < "${WORKDIR}/files/`look $1 ${WORKDIR}/tINDEX |
 | |
|  	    cut -f 2 -d '|'`.gz" |
 | |
|  	    cat - ${LOCALDESC} |
 | |
|  	    ${MKINDEX} /dev/stdin > ${PORTSDIR}/$2
 |