OSDN Git Service

*** empty log message ***
authorkoinec <>
Mon, 23 Nov 2009 05:15:30 +0000 (05:15 +0000)
committerkoinec <>
Mon, 23 Nov 2009 05:15:30 +0000 (05:15 +0000)
deamon/drd64_debugd_send_cmd_bootinfo.c
deamon/drd64_marshald_cmd_attach_request.c
deamon/drd64_marshald_send_connect.c
drdrv1.c
include/drd64_packet.h
libdrd64/drd64_libdrd64_cmd_connect.c

index 93e377a..cce2a5e 100644 (file)
@@ -54,7 +54,8 @@ int
        memset( gp_sendbuffer, 0x00, ( sizeof( Drd64_PacketHeader ) ));
 
        p_phead->w_header               = DRD64_PACKET_HEADER;
-       p_phead->i_cid_dest             = DRD64_CONNECTID_DIRECT;
+       p_phead->i_cid_dest             = DRD64_CONNECTID_NONE;
+       p_phead->i_cid_src              = DRD64_CONNECTID_NONE;
        p_phead->dw_command             = DRD64_COMMAND_DEBUGD_BOOTINFO;
        p_phead->w_packettype   = DRD64_PACKETTYPE_INFO;
        p_phead->i_datalen              = 0;
index 2f95033..191de6f 100644 (file)
@@ -53,23 +53,30 @@ int
        int             i_wlen;
        int             i_result;
        int             i_fds;
-       Drd64_Marshald_ConnectInfo      *p_cinfo;
+       Drd64_Marshald_ConnectInfo      *p_cinfo_client;
 
        DRD64_LOG_DEBUG("  [DEBUG]CMD: Attach Req. (Scn5:RecvTransAttachReq) Start");
 
-       p_cinfo = Drd64_Marshald_CInfo_GetConnectInfo(
-                                                                       p_phead->i_cid_dest );
-       assert( NULL != p_cinfo );
+       p_cinfo_client  = Drd64_Marshald_CInfo_GetConnectInfo(
+                                                                       p_phead->i_cid_client );
+       assert( NULL != p_cinfo_client );
 
-       i_fds   = Drd64_Server_RecvStatus_GetSocketID( i_recv_id );
-       assert( -1 != i_fds );
+       i_fds   = p_cinfo_client->i_src_socket;
+
+       //i_fds = Drd64_Server_RecvStatus_GetSocketID( i_recv_id );
+       //assert( -1 != i_fds );
 
        /* Set Answer Data ---------*/
+       p_attach->i_connect_id                  = p_phead->i_cid_dest;  //XXX
+
        p_phead->w_packettype           = DRD64_PACKETTYPE_ANSWER;
-       p_attach->i_connect_id                  = p_phead->i_cid_dest;
+       p_phead->i_cid_dest                             = p_phead->i_cid_client;
+       p_phead->i_cid_src                              = DRD64_CONNECTID_NONE;
+       p_phead->i_cid_client                   = DRD64_CONNECTID_NONE;
 
        i_wlen  = send( i_fds, (void *)p_phead,
                                                DRD64_PacketSize(p_phead), 0x00 );
+       DRD64_DEBUG_PRINT("send",i_wlen,"FD",i_fds,"errno",errno);
        if( i_wlen != DRD64_PacketSize(p_phead) )
                { return DRD64_MARSHALD_DISPATCH_RESULT_CLOSE; }        // XXX > error 
 
@@ -174,7 +181,9 @@ int
 
        p_phead->w_packettype   = DRD64_PACKETTYPE_TRANSPORT;
        //p_phead->i_resume_recvstatus_id = i_recv_id;
+       p_phead->i_cid_client   = p_phead->i_cid_dest;
        p_phead->i_cid_dest             = p_cinfo->i_dest_cinfo_id;
+       p_phead->i_cid_src              = p_cinfo->i_cinfo_id;
 
        i_err  = send( p_cinfo->i_dest_socket, (void *)p_phead,
                                 DRD64_PacketSize(p_phead), 0x00 );
index 34998d2..a46db9b 100644 (file)
@@ -71,7 +71,8 @@ Drd64_Marshald_ConnectInfo *
                                                                + sizeof( Drd64_PacketData_Connect ) ));
 
        p_phead->w_header               = DRD64_PACKET_HEADER;
-       p_phead->i_cid_dest             = DRD64_CONNECTID_DIRECT;
+       p_phead->i_cid_dest             = DRD64_CONNECTID_NONE;
+       p_phead->i_cid_src              = DRD64_CONNECTID_NONE;
        p_phead->dw_command             = DRD64_COMMAND_CONNECT;
        p_phead->w_packettype   = DRD64_PACKETTYPE_REQUEST;
        p_phead->i_datalen              = sizeof( Drd64_PacketData_Connect );
index e69500b..0c36b2b 100644 (file)
--- a/drdrv1.c
+++ b/drdrv1.c
@@ -59,9 +59,9 @@ int
        //Drd64_LibDrd64_Cmd_Attach( i_target_pid, "localhost" );
        Drd64_LibDrd64_Cmd_Attach( i_target_pid, "dev64.koinec.jp" );
 
-       sleep(4);
-       //Drd64_LibDrd64_Cmd_DisConecct();
-       //Drd64_LibDrd64_TermSystem();
+       sleep(2);
+       Drd64_LibDrd64_Cmd_DisConecct();
+       Drd64_LibDrd64_TermSystem();
 
        return 0x00;
 }
index a424754..1b0835e 100644 (file)
@@ -61,7 +61,7 @@ Comment:
 #define        DRD64_PACKETTYPE_ANSWER         0x0003
 #define        DRD64_PACKETTYPE_INFO           0x0004
 
-#define        DRD64_CONNECTID_DIRECT  -1
+#define        DRD64_CONNECTID_NONE    -1
 
 
 typedef struct {
@@ -71,6 +71,7 @@ typedef struct        {
        /* Comm. */
        INT             i_cid_dest;
        INT             i_cid_src;
+       INT             i_cid_client;
        //Byte  b_commtype;
 
        /* Command */
index eb78cb2..6f2048d 100644 (file)
@@ -48,7 +48,7 @@ int
        p_phead = (Drd64_PacketHeader *)gp_buffer;
 
        p_phead->w_header               = DRD64_PACKET_HEADER;
-       p_phead->i_cid_dest             = DRD64_CONNECTID_DIRECT;
+       p_phead->i_cid_dest             = DRD64_CONNECTID_NONE;
        p_phead->dw_command             = DRD64_COMMAND_CONNECT;
        p_phead->w_packettype   = DRD64_PACKETTYPE_REQUEST;
        p_phead->i_resume_recvstatus_id = -1;