#include
#include
#define BUFSIZE 512
#define PREM 0644
int copyfile(const char *name1,const char name2)
{
int infile,outfile;
ssize_t nread;
char buffer[BUFSIZE];
if ( (infile=open(name1,O_RDONLY))==-1
return(-1);
if((outfile=open(name2,O_WRONLY | O_CREATE|O_YRUNC,PREM))
==-1)
{
close (infile);
return(-2);
}
while((nread = read(infile,buffer,BUFSIZE)) > 0)
{
if(write(outfile.buffer,nread) < nread)
{
close(infile);
close(outfile);
return(-3);
}
}
close(infile);
close(outfile);
if(nread==-1)
return(-4);