I am trying to debug the RSYNC client and server by single stepping through them. The server seems to ok up to the point where it is waiting for the client connection. On the client side, I am having trouble finding the right options so that it will connect up to the local server with out fork() a copy of itself or trying to exec the rsh command. This is on RSYNC 2.5.5 on OpenVMS Alpha. If the OpenVMS lurkers on this list would like a ZIP archive of what I have so far, please let me know. Thanks, -John wb8tyw@qsl.network Personal Opinion Only
On 15 Apr 2002, "John E. Malmberg" <wb8tyw@qsl.net> wrote:> I am trying to debug the RSYNC client and server by single stepping > through them. > > The server seems to ok up to the point where it is waiting for the > client connection.And then what?> On the client side, I am having trouble finding the right options so > that it will connect up to the local server with out fork() a copy of > itself or trying to exec the rsh command.It should more or less create a copy with the same options, except that --server will always be set, and --sender will be inverted. See server_options() -- Martin
Martin Pool wrote:> On 15 Apr 2002, "John E. Malmberg" <wb8tyw@qsl.net> wrote: > >>I am trying to debug the RSYNC client and server by single stepping >>through them. >> >>The server seems to ok up to the point where it is waiting for the >>client connection. > > And then what?I go to start up the client from a second shell session.>>On the client side, I am having trouble finding the right options so >>that it will connect up to the local server with out fork() a copy of >>itself or trying to exec the rsh command.> It should more or less create a copy with the same options, except > that --server will always be set, and --sender will be inverted. See > server_options()It would be much better debugging if I could avoid the fork() attempt to exec the RSH shell for the local connection. The other complication is that on OpenVMS, RSH is a registered program to the shell. An system("RSH") will succeed, an exec("RSH") will fail. I can work around that, but it seems like having it in there for debugging needlessly complicates things. OpenVMS does not have a fork() function. It can create a child process, but all the I/O and memory must be set up from scratch. Passing I/O from an RSH subprocess through an extra debugger session can be a bit hassle. I would rather concentrate on making sure that the receiver child process is initialized properly. So are you saying for the client I should try: rsync --server --sender --port=9000 localhost:ftp where ftp is the entry in the servers rsyncd.conf file? The server process is running on --port=9000 for the purposes of testing. Does this mean that the client needs an rsyncd.conf file also? Sorry if I am a little dense on this. I looked at trying to convert the receiver process to an AST, but that requires that none of the inner level subroutines ever wait for an I/O to complete. I would have to do a complete rewrite based on the protocol that is going over the wire. And I do not see a description of that protocol in the distribution. -John wb8tyw@qsl.network Personal Opinion Only
tim.conway@philips.com
2002-Apr-16 07:20 UTC
Initial debug of client - Need command line help
Experts, feel free to jump on me for being wrong, but the forking, as i understand it, is integral to the way rsync currently does its work, and i don't think you can realy debug it in the classical sense. Anybody found a way around this one? Tim Conway tim.conway@philips.com 303.682.4917 Philips Semiconductor - Longmont TC 1880 Industrial Circle, Suite D Longmont, CO 80501 Available via SameTime Connect within Philips, n9hmg on AIM perl -e 'print pack(nnnnnnnnnnnn, 19061,29556,8289,28271,29800,25970,8304,25970,27680,26721,25451,25970), ".\n" ' "There are some who call me.... Tim?" "John E. Malmberg" <wb8tyw@qsl.net> Sent by: rsync-admin@lists.samba.org 04/15/2002 08:36 PM To: rsync@lists.samba.org cc: (bcc: Tim Conway/LMT/SC/PHILIPS) Subject: Initial debug of client - Need command line help Classification: I am trying to debug the RSYNC client and server by single stepping through them. The server seems to ok up to the point where it is waiting for the client connection. On the client side, I am having trouble finding the right options so that it will connect up to the local server with out fork() a copy of itself or trying to exec the rsh command. This is on RSYNC 2.5.5 on OpenVMS Alpha. If the OpenVMS lurkers on this list would like a ZIP archive of what I have so far, please let me know. Thanks, -John wb8tyw@qsl.network Personal Opinion Only -- To unsubscribe or change options: http://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.tuxedo.org/~esr/faqs/smart-questions.html