% cd /tmp/caia_mptcp/repository % ls -l -rw-r--r-- 1 stevej wheel 885596804 Feb 28 17:40 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repository.tar.gz # Could be -zxpf, but -zxf worked: % tar -zxf 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repository.tar.gz 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/dirstate: Hard-link target './.hg/undo.dirstate' does not exist. tar: Error exit delayed from previous errors. %Note that this work was done on a FreeBSD 11.2-RELEASE system, using tar: bsdtar 3.3.2 - libarchive 3.3.2 zlib/1.2.11 liblzma/5.2.3 bz2lib/1.0.6 and /bin/tcsh.
Analysis of the target directory indicated that all files extracted before the error were in place.
# # This script had to be written to work around the tar error. # Doing so required analysis of the tar file. See below in # this web page for the analysis and the script. # % cd /tmp/caia_mptcp/repository % sh ext_rep.sh x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/00changelog.i x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/hgrc x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.desc x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.branch x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.bookmarks x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/ x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/tags2-visible x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-names-v1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/branch2-base x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-revs-v1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/hgtagsfnodes1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/tags2-visible x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-names-v1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/branch2-base x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-revs-v1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/hgtagsfnodes1 x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/blackbox.log x 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/requires %
This is only necessary if you don't already have Mercurial installed on your system.
Mercurial is a revision control system similar to a mix of svn and git. It is necessary to interact with the Mercurial repository extracted from the tar file.
This builds and installs mercurial-4.8.1, which is in the default ports collection that came with FreeBSD 11.2-RELEASE.
% su root % cd /usr/ports/devel/mercurial % make DISABLE_VULNERABILITIES=yes % make install % exit
% cd # to home directory % mkdir hg_mptcp % hg clone /tmp/caia_mptcp/repository/8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo hg_mptcp
% cd hg_mptcp % ls -la total 688 drwxr-xr-x 24 stevej stevej 1024 Mar 3 19:05 . drwxr-xr-x 15 stevej stevej 1024 Mar 3 18:25 .. -rw-r--r-- 1 stevej stevej 115 Mar 3 19:02 .arcconfig -rw-r--r-- 1 stevej stevej 418 Mar 3 19:02 .arclint drwxr-xr-x 4 stevej stevej 512 Mar 3 19:05 .hg -rw-r--r-- 1 stevej stevej 6142 Mar 3 19:02 COPYRIGHT -rw-r--r-- 1 stevej stevej 687 Mar 3 19:02 LOCKS -rw-r--r-- 1 stevej stevej 5514 Mar 3 19:02 MAINTAINERS -rw-r--r-- 1 stevej stevej 21849 Mar 3 19:02 Makefile -rw-r--r-- 1 stevej stevej 84625 Mar 3 19:02 Makefile.inc1 -rw-r--r-- 1 stevej stevej 6181 Mar 3 19:02 Makefile.libcompat -rw-r--r-- 1 stevej stevej 379684 Mar 3 19:02 ObsoleteFiles.inc -rw-r--r-- 1 stevej stevej 2626 Mar 3 19:02 README -rw-r--r-- 1 stevej stevej 68326 Mar 3 19:02 UPDATING drwxr-xr-x 42 stevej stevej 1024 Mar 3 19:02 bin drwxr-xr-x 9 stevej stevej 512 Mar 3 19:02 cddl drwxr-xr-x 88 stevej stevej 1536 Mar 3 19:03 contrib drwxr-xr-x 5 stevej stevej 512 Mar 3 19:03 crypto drwxr-xr-x 27 stevej stevej 2048 Mar 3 19:03 etc drwxr-xr-x 5 stevej stevej 512 Mar 3 19:03 gnu drwxr-xr-x 8 stevej stevej 2048 Mar 3 19:03 include drwxr-xr-x 8 stevej stevej 512 Mar 3 19:03 kerberos5 drwxr-xr-x 113 stevej stevej 2560 Mar 3 19:03 lib drwxr-xr-x 37 stevej stevej 1024 Mar 3 19:03 libexec drwxr-xr-x 15 stevej stevej 512 Mar 3 19:03 release drwxr-xr-x 4 stevej stevej 512 Mar 3 19:03 rescue drwxr-xr-x 90 stevej stevej 2048 Mar 3 19:03 sbin drwxr-xr-x 7 stevej stevej 512 Mar 3 19:03 secure drwxr-xr-x 28 stevej stevej 512 Mar 3 19:03 share drwxr-xr-x 56 stevej stevej 1024 Mar 3 19:05 sys drwxr-xr-x 3 stevej stevej 512 Mar 3 19:05 targets drwxr-xr-x 5 stevej stevej 512 Mar 3 19:05 tests drwxr-xr-x 15 stevej stevej 512 Mar 3 19:05 tools drwxr-xr-x 279 stevej stevej 5120 Mar 3 19:05 usr.bin drwxr-xr-x 223 stevej stevej 4096 Mar 3 19:05 usr.sbin % % ls -la sys/netinet/*mptcp* -rw-r--r-- 1 stevej stevej 2977 Mar 3 19:04 sys/netinet/mptcp.h -rw-r--r-- 1 stevej stevej 8769 Mar 3 19:04 sys/netinet/mptcp_cc.c -rw-r--r-- 1 stevej stevej 4688 Mar 3 19:04 sys/netinet/mptcp_cc.h -rw-r--r-- 1 stevej stevej 2656 Mar 3 19:04 sys/netinet/mptcp_cc_module.h -rw-r--r-- 1 stevej stevej 4676 Mar 3 19:04 sys/netinet/mptcp_deftcp_cc.c -rw-r--r-- 1 stevej stevej 7873 Mar 3 19:04 sys/netinet/mptcp_dumbrr.c -rw-r--r-- 1 stevej stevej 4992 Mar 3 19:04 sys/netinet/mptcp_event.c -rw-r--r-- 1 stevej stevej 6115 Mar 3 19:04 sys/netinet/mptcp_lowrtt.c -rw-r--r-- 1 stevej stevej 33478 Mar 3 19:04 sys/netinet/mptcp_options.c -rw-r--r-- 1 stevej stevej 6165 Mar 3 19:04 sys/netinet/mptcp_pcb.c -rw-r--r-- 1 stevej stevej 3822 Mar 3 19:04 sys/netinet/mptcp_pcb.h -rw-r--r-- 1 stevej stevej 781 Mar 3 19:04 sys/netinet/mptcp_proto.c -rw-r--r-- 1 stevej stevej 8989 Mar 3 19:04 sys/netinet/mptcp_sched.c -rw-r--r-- 1 stevej stevej 5044 Mar 3 19:04 sys/netinet/mptcp_sched.h -rw-r--r-- 1 stevej stevej 2643 Mar 3 19:04 sys/netinet/mptcp_sched_module.h -rw-r--r-- 1 stevej stevej 40019 Mar 3 19:04 sys/netinet/mptcp_subr.c -rw-r--r-- 1 stevej stevej 21463 Mar 3 19:04 sys/netinet/mptcp_usrreq.c -rw-r--r-- 1 stevej stevej 24443 Mar 3 19:04 sys/netinet/mptcp_var.h %
As I was poking around in the repository, I noticed the files below. It looks like certain files, such as _r_e_a_d_m_e.i and _t_o_d_o.i could contain useful information. I don't know how to access the content in those files at this time.
% cd /tmp/caia_mptcp/repository/8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo % cd .hg/store/data % ls -la total 1112 drwxr-xr-x 28 stevej wheel 1536 Mar 3 18:57 . drwxr-xr-x 4 stevej wheel 512 Mar 3 19:05 .. -rw-r--r-- 2 stevej wheel 5283 Feb 17 2020 _c_o_p_y_r_i_g_h_t.i -rw-r--r-- 2 stevej wheel 1678 Feb 17 2020 _c_v_s-_i_n_f_o.i -rw-r--r-- 2 stevej wheel 1229 Feb 17 2020 _h_w._t_r_o_u_b_l_e.i -rw-r--r-- 2 stevej wheel 1037 Feb 17 2020 _l_o_c_k_s.i -rw-r--r-- 2 stevej wheel 35988 Feb 17 2020 _m_a_i_n_t_a_i_n_e_r_s.i -rw-r--r-- 2 stevej wheel 9831 Feb 17 2020 _makefile.alpha.i -rw-r--r-- 2 stevej wheel 132163 Feb 17 2020 _makefile.i -rw-r--r-- 2 stevej wheel 5306 Feb 17 2020 _makefile.inc0.i -rw-r--r-- 2 stevej wheel 189213 Feb 17 2020 _makefile.inc1.d -rw-r--r-- 2 stevej wheel 74944 Feb 17 2020 _makefile.inc1.i -rw-r--r-- 2 stevej wheel 1510 Feb 17 2020 _makefile.lib32.i -rw-r--r-- 2 stevej wheel 5826 Feb 17 2020 _makefile.libcompat.i -rw-r--r-- 2 stevej wheel 620 Feb 17 2020 _makefile.mips.i -rw-r--r-- 2 stevej wheel 7367 Feb 17 2020 _makefile.upgrade.i -rw-r--r-- 2 stevej wheel 133733 Feb 17 2020 _obsolete_files.inc.i -rw-r--r-- 2 stevej wheel 11416 Feb 17 2020 _r_e_a_d_m_e.i -rw-r--r-- 2 stevej wheel 5880 Feb 17 2020 _t_o_d_o.i -rw-r--r-- 2 stevej wheel 8939 Feb 17 2020 _u_p_d_a_t_i_n_g.64_b_t_t.i -rw-r--r-- 2 stevej wheel 238483 Feb 17 2020 _u_p_d_a_t_i_n_g.d -rw-r--r-- 2 stevej wheel 60992 Feb 17 2020 _u_p_d_a_t_i_n_g.i drwxr-xr-x 43 stevej wheel 1024 Feb 17 2020 bin drwxr-xr-x 9 stevej wheel 512 Feb 17 2020 cddl drwxr-xr-x 3 stevej wheel 512 Feb 17 2020 compat drwxr-xr-x 119 stevej wheel 2048 Feb 17 2020 contrib drwxr-xr-x 8 stevej wheel 512 Feb 17 2020 crypto drwxr-xr-x 34 stevej wheel 1024 Feb 17 2020 e_bones drwxr-xr-x 39 stevej wheel 3584 Feb 17 2020 etc drwxr-xr-x 46 stevej wheel 1024 Feb 17 2020 games drwxr-xr-x 10 stevej wheel 512 Mar 3 18:56 gnu drwxr-xr-x 8 stevej wheel 3072 Mar 3 18:56 include -rw-r--r-- 2 stevej wheel 4801 Feb 17 2020 installworld__newk.i -rw-r--r-- 2 stevej wheel 5781 Feb 17 2020 installworld__oldk.i drwxr-xr-x 9 stevej wheel 512 Mar 3 18:56 kerberos5 drwxr-xr-x 8 stevej wheel 512 Mar 3 18:55 kerberos_i_v -rw-r--r-- 2 stevej wheel 4785 Feb 17 2020 kern__racct.c.i drwxr-xr-x 162 stevej wheel 3072 Feb 17 2020 lib drwxr-xr-x 53 stevej wheel 1536 Mar 3 18:56 libexec drwxr-xr-x 36 stevej wheel 1024 Feb 17 2020 lkm drwxr-xr-x 23 stevej wheel 2048 Mar 3 18:55 release drwxr-xr-x 4 stevej wheel 512 Mar 3 18:56 rescue drwxr-xr-x 153 stevej wheel 3584 Mar 3 18:55 sbin drwxr-xr-x 9 stevej wheel 512 Mar 3 18:55 secure drwxr-xr-x 38 stevej wheel 1024 Mar 3 18:55 share drwxr-xr-x 86 stevej wheel 1536 Mar 3 18:55 sys drwxr-xr-x 3 stevej wheel 512 Mar 3 18:56 targets drwxr-xr-x 6 stevej wheel 512 Feb 17 2020 tests drwxr-xr-x 17 stevej wheel 512 Mar 3 18:55 tools drwxr-xr-x 347 stevej wheel 6144 Feb 17 2020 usr.bin drwxr-xr-x 332 stevej wheel 6656 Mar 3 18:56 usr.sbin -rw-r--r-- 2 stevej wheel 1087 Feb 17 2020 ~2earcconfig.i -rw-r--r-- 2 stevej wheel 388 Feb 17 2020 ~2earclint.i -rw-r--r-- 2 stevej wheel 310 Feb 17 2020 ~2ehgtags.i %
According to various resources on the web, this failure is due to a hard link to a file in the archive.
% cd /tmp/caia_mptcp/repository % tar -tvvf 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repository.tar.gz > xxx % wc xxx 135473 1219261 21162274 xxx % vi xxx . . . # # These lines represent the only hard link in the repository: # -rw-r--r-- 0 boatbucket boatbucket 40 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.dirstate hrw-r--r-- 0 boatbucket boatbucket 0 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/dirstate link to ./.hg/undo.dirstate . . . # # These lines are at the tail end of the repository manifest. # Fortunately, the hard link is very near the end of the archive! # -rw-r--r-- 0 boatbucket boatbucket 40 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.dirstate hrw-r--r-- 0 boatbucket boatbucket 0 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/dirstate link to ./.hg/undo.dirstate -rw-r--r-- 0 boatbucket boatbucket 57 Feb 15 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/00changelog.i -rw-r--r-- 0 boatbucket boatbucket 314 Apr 30 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/hgrc -rw-r--r-- 0 boatbucket boatbucket 79 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.desc -rw-r--r-- 0 boatbucket boatbucket 7 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.branch -rw-r--r-- 0 boatbucket boatbucket 0 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.bookmarks drwxr-xr-x 0 boatbucket boatbucket 0 May 12 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/ -rw-r--r-- 0 boatbucket boatbucket 106 May 12 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/tags2-visible -rw-r--r-- 0 boatbucket boatbucket 52 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-names-v1 -rw-r--r-- 0 boatbucket boatbucket 230 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/branch2-base -rw-r--r-- 0 boatbucket boatbucket 1651440 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-revs-v1 -rw-r--r-- 0 boatbucket boatbucket 4954320 Feb 17 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/hgtagsfnodes1 -rw-r--r-- 0 boatbucket boatbucket 38624 Jul 15 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/blackbox.log -rw-r--r-- 0 boatbucket boatbucket 59 Feb 15 2020 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/requires Archive Format: GNU tar format, Compression: gzipAnalysis of the target directory indicated that all files extracted before the error were in place.
% cd /tmp/caia_mptcp/repository % cat ext_rep.sh #!/bin/sh # for FN in \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/00changelog.i \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/hgrc \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.desc \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.branch \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/undo.bookmarks \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/ \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/tags2-visible \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-names-v1 \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/branch2-base \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/rbc-revs-v1 \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/cache/hgtagsfnodes1 \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/blackbox.log \ 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repo/./.hg/requires do tar -zxvpf 8232ffcf-0557-48ef-9c33-2eb2327a63ac-repository.tar.gz ${FN} done %
From doing the following:
% cd hg_mptcp/sys/netinet % hg log mptcp*It appears that:
The branch cloned from the repository is:
% cd hg_mptcp % hg branch caia-mptcp-head-modular %The branches available are:
% hg branches --color false caia-mptcp-head-modular 206429:8bce76737680 freebsd-head 206428:f5b3e14db539 caia-mptcp-head 198991:7324d0b79152 %The tags available are:
% hg tags --color false tip 206429:8bce76737680 caia-mptcp-v0.51 196491:c124a2c6d7cf %The software revision is:
% hg identify -n 206429 %