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

Reply via email to