aboutsummaryrefslogtreecommitdiff
path: root/sys/imio/iki/qpf/qpfcopy.x
blob: ebc2fa5bf92a519eae69d689e4e5b9e760f38afc (plain) (blame)
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
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.

include	<error.h>
include	"qpf.h"

# QPF_COPY -- Copy an image.  A special operator is provided for fast, blind
# copies of entire images.

procedure qpf_copy (kernel, old_root, old_extn, new_root, new_extn, status)

int	kernel			#I IKI kernel
char	old_root[ARB]		#I old image root name
char	old_extn[ARB]		#I old image extn
char	new_root[ARB]		#I new image root name
char	new_extn[ARB]		#I new extn
int	status			#O output status

pointer	sp
pointer	oldname, newname
errchk	qp_copy

begin
	call smark (sp)
	call salloc (oldname, SZ_PATHNAME, TY_CHAR)
	call salloc (newname, SZ_PATHNAME, TY_CHAR)

	# Get filename of old and new images.
	call iki_mkfname (old_root, old_extn, Memc[oldname], SZ_PATHNAME)
	call iki_mkfname (new_root, QPF_EXTN, Memc[newname], SZ_PATHNAME)

	# Copy the datafile.
	iferr (call qp_copy (Memc[oldname], Memc[newname])) {
	    call erract (EA_WARN)
	    status = ERR
	} else
	    status = OK

	call sfree (sp)
end