Commit e0fde757 authored by Martin Pool's avatar Martin Pool

Doc.

parent 25d34a5c
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
Copyright (C) 1996-2000 by Andrew Tridgell Copyright (C) 1996-2000 by Andrew Tridgell
Copyright (C) Paul Mackerras 1996 Copyright (C) Paul Mackerras 1996
Copyright (C) 2002 by Martin Pool
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
...@@ -20,9 +21,24 @@ ...@@ -20,9 +21,24 @@
#include "rsync.h" #include "rsync.h"
/* handling the cleanup when a transfer is interrupted is tricky when /**
--partial is selected. We need to ensure that the partial file is * @file cleanup.c
kept if any real data has been transferred */ *
* Code for handling interrupted transfers. Depending on the @c
* --partial option, we may either delete the temporary file, or go
* ahead and overwrite the destination. This second behaviour only
* occurs if we've sent literal data and therefore hopefully made
* progress on the transfer.
**/
/**
* Set to True once literal data has been sent across the link for the
* current file. (????)
*
* Handling the cleanup when a transfer is interrupted is tricky when
* --partial is selected. We need to ensure that the partial file is
* kept if any real data has been transferred.
**/
int cleanup_got_literal=0; int cleanup_got_literal=0;
static char *cleanup_fname; static char *cleanup_fname;
...@@ -35,9 +51,11 @@ extern int io_error; ...@@ -35,9 +51,11 @@ extern int io_error;
pid_t cleanup_child_pid = -1; pid_t cleanup_child_pid = -1;
/* /**
* Code is one of the RERR_* codes from errcode.h. * Eventually calls exit(), therefore does not return.
*/ *
* @param code one of the RERR_* codes from errcode.h.
**/
void _exit_cleanup(int code, const char *file, int line) void _exit_cleanup(int code, const char *file, int line)
{ {
int ocode = code; int ocode = code;
......
/* /*
Copyright (C) Andrew Tridgell 1998 Copyright (C) Andrew Tridgell 1998
Copyright (C) 2002 by Martin Pool
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
...@@ -16,11 +17,15 @@ ...@@ -16,11 +17,15 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/ */
/* /**
compatibility functions - replacing functions for platforms that don't * @file compat.c
have them. *
* Reimplementations of standard functions for platforms that don't
* have them.
**/
*/
#include "rsync.h" #include "rsync.h"
...@@ -78,9 +83,11 @@ ...@@ -78,9 +83,11 @@
#endif #endif
#ifndef HAVE_STRPBRK #ifndef HAVE_STRPBRK
/* Find the first ocurrence in S of any character in ACCEPT. /**
derived from glibc * Find the first ocurrence in @p s of any character in @p accept.
*/ *
* Derived from glibc
**/
char *strpbrk(const char *s, const char *accept) char *strpbrk(const char *s, const char *accept)
{ {
while (*s != '\0') { while (*s != '\0') {
...@@ -97,10 +104,14 @@ ...@@ -97,10 +104,14 @@
#ifndef HAVE_STRLCPY #ifndef HAVE_STRLCPY
/* Like strncpy but does not 0 fill the buffer and always null /**
* terminates. bufsize is the size of the destination buffer. * Like strncpy but does not 0 fill the buffer and always null
* terminates.
*
* @param bufsize is the size of the destination buffer.
* *
* Returns the index of the terminating byte. */ * @return index of the terminating byte.
**/
size_t strlcpy(char *d, const char *s, size_t bufsize) size_t strlcpy(char *d, const char *s, size_t bufsize)
{ {
size_t len = strlen(s); size_t len = strlen(s);
...@@ -114,9 +125,13 @@ ...@@ -114,9 +125,13 @@
#endif #endif
#ifndef HAVE_STRLCAT #ifndef HAVE_STRLCAT
/* like strncat but does not 0 fill the buffer and always null /**
terminates. bufsize is the length of the buffer, which should * Like strncat() but does not 0 fill the buffer and always null
be one more than the maximum resulting string length */ * terminates.
*
* @param bufsize length of the buffer, which should be one more than
* the maximum resulting string length.
**/
size_t strlcat(char *d, const char *s, size_t bufsize) size_t strlcat(char *d, const char *s, size_t bufsize)
{ {
size_t len1 = strlen(d); size_t len1 = strlen(d);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment