Hi Scott, Thanks for your in depth analysis. It seems that the culprit is:
.synce/scripts/dccm.sh If I remove the dccm.sh script from the path I get the same result for ppp0. Putting it back allows ppp0 to stay up. Here's the script: ++++++++++++++++++++++++++++++++++++++ more .synce/scripts/dccm.sh #!/bin/sh case "$1" in connect) ;; disconnect) ;; start|stop) raki=`dcop | grep raki` dcop $raki Raki "dccmNotification(QString)" $1 2> /dev/null > /dev/null ;; install) ;; uninstall) ;; *) echo "Help!" ;; esac ++++++++++++++++++++++++++++++++++++++ Here's the trace with more defined results for archival purposes... ******************************** strace -p 5446 ppp0 Connects here: select(6, [3 4 5], NULL, NULL, {4, 999019}) = 1 (in [4], left {3, 598000}) select(5, [4], NULL, NULL, NULL) = 1 (in [4]) accept(4, {sa_family=AF_INET, sin_port=htons(1040), sin_addr=inet_addr("192.168.131.129")}, [16]) = 10 getpeername(10, {sa_family=AF_INET, sin_port=htons(1040), sin_addr=inet_addr("192.168.131.129")}, [16]) = 0 setsockopt(10, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0 getsockname(10, {sa_family=AF_INET, sin_port=htons(5679), sin_addr=inet_addr("192.168.131.1")}, [16]) = 0 gettimeofday({1191320688, 196909}, NULL) = 0 gettimeofday({1191320688, 196951}, NULL) = 0 select(11, [3 4 5 10], NULL, NULL, {3, 596228}) = 1 (in [10], left {3, 558000}) read(10, "\0\0\0\0", 4) = 4 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "Header: 0", 9) = 9 write(2, "\n", 1) = 1 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "initialization package", 22) = 22 write(2, "\n", 1) = 1 gettimeofday({1191320688, 237093}, NULL) = 0 gettimeofday({1191320688, 237136}, NULL) = 0 select(11, [3 4 5 10], NULL, NULL, {3, 556043}) = 1 (in [10], left {3, 552000}) read(10, "d\0\0\0", 4) = 4 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "Header: 100", 11) = 11 write(2, "\n", 1) = 1 write(2, "[bool WindowsCEDevice::handleInf"..., 55) = 55 write(2, "this is an information message", 30) = 30 write(2, "\n", 1) = 1 read(10, "(\0\0\0\5\0\0\0\21\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0(\0\0\000"..., 100) = 100 write(7, "A", 1) = 1 getuid32() = 501 open("/etc/passwd", O_RDONLY) = 11 fcntl64(11, F_GETFD) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 fstat64(11, {st_mode=S_IFREG|0644, st_size=1938, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f0b000 read(11, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1938 close(11) = 0 munmap(0xb7f0b000, 4096) = 0 stat64("/home/patrick/.synce", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 write(2, "[bool ConnectionFileManager::_wr"..., 96) = 96 write(2, "Writing client-file: /home/patri"..., 57) = 57 write(2, "\n", 1) = 1 open("/home/patrick/.synce/192.168.131.129", O_WRONLY|O_CREAT|O_TRUNC| O_LARGEFILE, 0666) = 11 write(11, "# Modifications to this file wil"..., 78) = 78 write(11, "\n", 1) = 1 write(11, "[dccm]\n", 7) = 7 write(11, "pid=5446\n", 9) = 9 write(11, "\n", 1) = 1 write(11, "[device]\n", 9) = 9 write(11, "os_version=5\n", 13) = 13 write(11, "build_bumber=0\n", 15) = 15 write(11, "processor_type=2577\n", 20) = 20 write(11, "partner_id_1=0\n", 15) = 15 write(11, "partner_id_2=0\n", 15) = 15 <snip> write(11, "ip=192.168.131.129\n", 19) = 19 write(11, "port=1040\n", 10) = 10 write(11, "\n", 1) = 1 write(11, "[connection]\n", 13) = 13 write(11, "transport=ppp\n", 14) = 14 close(11) = 0 getuid32() = 501 open("/etc/passwd", O_RDONLY) = 11 fcntl64(11, F_GETFD) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 fstat64(11, {st_mode=S_IFREG|0644, st_size=1938, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f0b000 read(11, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1938 close(11) = 0 munmap(0xb7f0b000, 4096) = 0 stat64("/home/patrick/.synce", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 write(2, "[bool ConnectionFileManager::_wr"..., 96) = 96 write(2, "Writing client-file: /home/patri"..., 59) = 59 write(2, "\n", 1) = 1 open("/home/patrick/.synce/active_connection", O_WRONLY|O_CREAT|O_TRUNC| O_LARGEFILE, 0666) = 11 write(11, "# Modifications to this file wil"..., 78) = 78 write(11, "\n", 1) = 1 write(11, "[dccm]\n", 7) = 7 write(11, "pid=5446\n", 9) = 9 write(11, "\n", 1) = 1 write(11, "[device]\n", 9) = 9 write(11, "os_version=5\n", 13) = 13 write(11, "build_bumber=0\n", 15) = 15 write(11, "processor_type=2577\n", 20) = 20 write(11, "partner_id_1=0\n", 15) = 15 write(11, "partner_id_2=0\n", 15) = 15 <snip> write(11, "ip=192.168.131.129\n", 19) = 19 write(11, "port=1040\n", 10) = 10 write(11, "\n", 1) = 1 write(11, "[connection]\n", 13) = 13 write(11, "transport=ppp\n", 14) = 14 close(11) = 0 getuid32() = 501 open("/etc/passwd", O_RDONLY) = 11 fcntl64(11, F_GETFD) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 fstat64(11, {st_mode=S_IFREG|0644, st_size=1938, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f0b000 read(11, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1938 close(11) = 0 munmap(0xb7f0b000, 4096) = 0 stat64("/home/patrick/.synce", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 stat64("/home/patrick/.synce/scripts", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 open("/home/patrick/.synce/scripts", O_RDONLY|O_NONBLOCK|O_LARGEFILE| O_DIRECTORY) = 11 fstat64(11, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 getdents(11, /* 3 entries */, 4096) = 52 lstat64("/home/patrick/.synce/scripts/.", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 lstat64("/home/patrick/.synce/scripts/dccm.sh", {st_mode=S_IFREG|0755, st_size=245, ...}) = 0 write(2, "[static void Utils::runScripts(s"..., 62) = 62 write(2, "Running script: /home/patrick/.s"..., 60) = 60 write(2, "\n", 1) = 1 rt_sigaction(SIGINT, {SIG_IGN}, {0x80516f0, [INT], SA_RESTART}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_IGN}, {0x80516f0, [QUIT], SA_RESTART}, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 clone(child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD, parent_tidptr=0xbfe678a4) = 5957 waitpid(5957, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0) = 5957 rt_sigaction(SIGINT, {0x80516f0, [INT], SA_RESTART}, NULL, 8) = 0 rt_sigaction(SIGQUIT, {0x80516f0, [QUIT], SA_RESTART}, NULL, 8) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 lstat64("/home/patrick/.synce/scripts/..", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 getdents(11, /* 0 entries */, 4096) = 0 close(11) = 0 write(2, "[void DeviceManager::addConnecte"..., 66) = 66 write(2, "Device connected: 192.168.131.12"..., 33) = 33 write(2, "\n", 1) = 1 gettimeofday({1191320688, 259462}, NULL) = 0 gettimeofday({1191320688, 259495}, NULL) = 0 select(11, [3 4 5 10], NULL, NULL, {3, 533684}) = 0 (Timeout) . . . ppp1 Connects here: gettimeofday({1191320921, 796397}, NULL) = 0 gettimeofday({1191320921, 796440}, NULL) = 0 select(11, [3 4 5 10], NULL, NULL, {4, 996739}) = 1 (in [4], left {0, 793000}) select(5, [4], NULL, NULL, NULL) = 1 (in [4]) accept(4, {sa_family=AF_INET, sin_port=htons(1025), sin_addr=inet_addr("192.168.131.130")}, [16]) = 11 getpeername(11, {sa_family=AF_INET, sin_port=htons(1025), sin_addr=inet_addr("192.168.131.130")}, [16]) = 0 setsockopt(11, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0 getsockname(11, {sa_family=AF_INET, sin_port=htons(5679), sin_addr=inet_addr("192.168.131.2")}, [16]) = 0 gettimeofday({1191320926, 871}, NULL) = 0 gettimeofday({1191320926, 918}, NULL) = 0 select(12, [3 4 5 10 11], NULL, NULL, {0, 792261}) = 1 (in [11], left {0, 792261}) read(11, "\0\0\0\0", 4) = 4 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "Header: 0", 9) = 9 write(2, "\n", 1) = 1 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "initialization package", 22) = 22 write(2, "\n", 1) = 1 gettimeofday({1191320926, 2103}, NULL) = 0 gettimeofday({1191320926, 2157}, NULL) = 0 select(12, [3 4 5 10 11], NULL, NULL, {0, 791022}) = 1 (in [11], left {0, 784000}) read(11, "d\0\0\0", 4) = 4 write(2, "[bool WindowsCEDevice::handleEve"..., 42) = 42 write(2, "Header: 100", 11) = 11 write(2, "\n", 1) = 1 write(2, "[bool WindowsCEDevice::handleInf"..., 55) = 55 write(2, "this is an information message", 30) = 30 write(2, "\n", 1) = 1 read(11, "(\0\0\0\5\0\0\0\21\n\0\0\0\0\0\0)U\211`\0\0\0\0(\0\0\000"..., 100) = 100 write(2, "[virtual void WindowsCEDevice::d"..., 48) = 48 write(2, "Disconnect", 10) = 10 write(2, "\n", 1) = 1 close(11) = 0 ************************************************8 vdccm -d 5 -f -i ppp0 Connects here: [bool WindowsCEDevice::handleInfoMessage(uint32_t):93] this is an information message [bool ConnectionFileManager::_writeConnectionFile(std::string, const WindowsCEDeviceBase*):117] Writing client-file: /home/patrick/.synce/192.168.131.129 [bool ConnectionFileManager::_writeConnectionFile(std::string, const WindowsCEDeviceBase*):117] Writing client-file: /home/patrick/.synce/active_connection [static void Utils::runScripts(std::string, std::string):230] Running script: /home/patrick/.synce/scripts/dccm.sh connect [void DeviceManager::addConnectedDevice(WindowsCEDeviceBase*):85] Device connected: 192.168.131.129 . . . ppp1 Connects here: [bool WindowsCEDevice::handleEvent():188] this is a ping reply [bool WindowsCEDevice::handleEvent():184] Header: 305419896 [bool WindowsCEDevice::handleEvent():188] this is a ping reply [bool WindowsCEDevice::handleEvent():184] Header: 0 [bool WindowsCEDevice::handleEvent():186] initialization package [bool WindowsCEDevice::handleEvent():184] Header: 100 [bool WindowsCEDevice::handleInfoMessage(uint32_t):93] this is an information message [virtual void WindowsCEDevice::disconnect():67] Disconnect [bool WindowsCEDevice::handleEvent():184] Header: 305419896 [bool WindowsCEDevice::handleEvent():188] this is a ping reply [bool WindowsCEDevice::handleEvent():184] Header: 305419896 -- Patrick Shirkey Boost Hardware Ltd. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ SynCE-Devel mailing list SynCE-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/synce-devel