summaryrefslogtreecommitdiff
path: root/hlink.c
AgeCommit message (Collapse)AuthorFilesLines
2005-03-09When itemizing, we now set ITEM_LOCAL_CHANGE and ITEM_XNAME_FOLLOWS.Wayne Davison1-3/+5
2005-03-05- Changed hlink_list[] to store file-list indexes instead ofWayne Davison1-73/+90
pointers. - Made hard_link_one() non-static so that the generator can call it. Improved it to do itemized output. - Replaced do_hard_links() with hard_link_cluster(), which changes the hard-linking from a post-transfer loop into a per-cluster operation that occurs incrementally as the transfer updates (or finds unchanged) one item in the cluster.
2005-02-27Added 2 args to do_hard_links() so that it can call maybe_send_keepalive().Wayne Davison1-1/+3
2005-02-14John E. Malmberg convinced me to standardize on #ifs for definedWayne Davison1-5/+5
values instead of non-zero.
2005-02-13Improved the call to f_name_cmp().Wayne Davison1-1/+1
2005-02-07Fixed a typo.Wayne Davison1-1/+1
2005-02-07Added missing calls to safe_fname() and full_fname().Wayne Davison1-3/+3
2005-02-03In hlink_compare(), call f_name_cmp() directly instead of usingWayne Davison1-1/+1
file_compare().
2004-07-12Made hard_link_check() compile when SUPPORT_HARD_LINKS isn't enabled.Wayne Davison1-0/+2
2004-06-11Call link_stat() with its new arg (for --keep-dirlinks support).Wayne Davison1-2/+2
2004-05-15Changed rprintf() calls that included strerror() to use rsyserr().Wayne Davison1-6/+5
2004-03-26Fixed a crash bug when hlink_list is NULL and a link_u.linksWayne Davison1-1/+1
pointer in one of the file_struct nodes is not.
2004-02-11If --backup was specified, the links we remove are backed up.Wayne Davison1-3/+7
2004-02-10Make idev, hlink and file_struct + strings use allocationJ.W. Schultz1-2/+21
pools.
2004-02-03correct sizeof usage.J.W. Schultz1-9/+9
2004-02-02Don't free link_u.idev.Wayne Davison1-1/+0
2004-02-02Free the hlink data again.Wayne Davison1-0/+1
2004-02-02Don't free the hlink data (it is not separately allocated anymore).Wayne Davison1-1/+0
2004-01-27Fixed a comment.Wayne Davison1-1/+1
2004-01-25We now link the hard-linked flist entries into a circular list, markWayne Davison1-9/+26
the last item with FLAG_HLINK_EOL, and save off an index for our master entry in the hlink_list[] array. Added the hard_link_check() function.
2004-01-22Use the new f_name_to() calling syntax.Wayne Davison1-4/+3
2004-01-12Updated to perform a much more efficient hlink algorithm that doesn'tWayne Davison1-84/+74
require any binary searching of hlink data.
2004-01-11Updated a questioning comment.Wayne Davison1-2/+3
2004-01-11Use the new dev+inode union in the flist_struct.Wayne Davison1-10/+10
2004-01-08Optimized the sending of dev+inode data for hard-linking supportWayne Davison1-2/+2
(but only when speaking protocol 28).
2004-01-08- No need to check S_ISREG() on files already in the hlink_list.Wayne Davison1-18/+10
- The realloc in init_hard_links() might fail if the list is empty (which can happen if there are no regular files in the transfer). I changed the code to free the list in that case.
2004-01-07Change hlink_list so we only have a list of pointers toJ.W. Schultz1-24/+36
file_struct instead of a copy of the file_struct list.
2004-01-02Optimized hard_link_one() to not call f_name() so many times.Wayne Davison1-19/+13
2003-12-06Merged in the security fixes from 2.5.7.Wayne Davison1-3/+1
2002-03-25DocMartin Pool1-0/+2
2002-03-25Hm, strange off-by-one bug.Martin Pool1-1/+1
2002-03-25If we discover a hardlink with -vv say what it's a link to.Martin Pool1-1/+6
2002-01-23Doc.Martin Pool1-2/+7
do_hard_links() actually only looks at the global hardlink table, so it can be a (void) fn. (Another gcc warning...)
2002-01-11AutoindentMartin Pool1-66/+84
Add copyright
1999-03-11When a file cannot be deleted because of ETXTBSY (in particular, when anDavid Dykstra1-1/+1
executable is busy on HPUX), rename it instead to .rsyncNNN. Most of the code was submitted by Ketil Kristiansen <ketil-k@osc.no>
1998-06-18for consistency use memcpy/memset everywhere instead of bcopy/bzeroAndrew Tridgell1-1/+1
1998-05-07some large systematic changes to make socket conversion easier. TheAndrew Tridgell1-4/+3
biggest one is the use of rprintf() instead of fprintf()
1998-05-06added support for 64 bit file offsets under Solaris 2.6. Not testedAndrew Tridgell1-1/+1
yet.
1998-04-13a few code cleanupsAndrew Tridgell1-38/+46
1998-04-05fixed a bug in the hlink code - it wasn't taking account of the newAndrew Tridgell1-12/+12
pointer list code for flist.
1998-03-23added wrappers around all the system calls that can change what is onAndrew Tridgell1-3/+3
disk. The wrappers check for dry_run.
1998-03-23finished 64 bit file offset support. Hopefully rsync can now transferAndrew Tridgell1-3/+3
files up to 2^64 bytes in size. Now I just need to find enough disk space to test this :-) The 64 bit offset code only works if off_t is 64 bits (or bigger!) on both ends of the link. If one end tries to send a file greater than 2^31 in size and the other end doesn't support it then rsync will abort. This commit also cleans up some static declarations so they are in a unitinitialised segment to save load time.
1998-03-23a large change to make rsync much more memory efficient. This is doneAndrew Tridgell1-12/+12
in 3 ways: 1) the realloc is done on a list of pointers, not a list of structures 2) only the basename of the file is now kept in the file struct an a util function f_name() is now used to access the full name when required. 3) pointers to directory names are re-used hopefully I haven't broken anything. This will need lots of testing.
1998-01-01*** empty log message ***Andrew Tridgell1-1/+4
1997-12-28- fixed spelling errors in man pageAndrew Tridgell1-7/+7
- fixed bug in hard link handling that could lead to spurious hard links. - fixed bug in the string handling in flist.c
1997-12-17*** empty log message ***Andrew Tridgell1-2/+2
1997-12-16- fixed the "write exception" error. I was resetting got_select at theAndrew Tridgell1-6/+12
wrong point - fixed a seg fault error in flist.c - only print hlink debug messages when using -v
1997-12-15- fixed an off by 1 bug in the hard link supportAndrew Tridgell1-1/+1
- added a note about anonymous cvs access to the source code in the README
1996-10-01- detect presence of remsh and use it instead of rshAndrew Tridgell1-3/+5
- handle directory ownership and permissions much better. - fix bug where links caused the permissions of files to be set incorrectly - override the default umask in setting file permissions - better handling -o and -D being passed to non-root users - handle rsync to a destination of / - fix the handling of mismatched file types at either end of the link. For example, if the destination is a link and the source is not.
1996-06-30- hard linksAndrew Tridgell1-0/+138
- better sparse handling - FERROR and FINFO