OSDN Git Service

*** empty log message ***
authorkoinec <>
Sun, 6 Dec 2009 07:45:36 +0000 (07:45 +0000)
committerkoinec <>
Sun, 6 Dec 2009 07:45:36 +0000 (07:45 +0000)
14 files changed:
deamon/Makefile
deamon/drd64_debugd_main.c
deamon/drd64_debugd_send_cmd_bootinfo.c
deamon/drd64_marshald_cinfo.c
deamon/drd64_marshald_cmd_attach_request.c
deamon/drd64_marshald_cmd_connect.c
deamon/drd64_marshald_main.c
deamon/drd64_marshald_send_connect.c
include/drd64_defines.h
include/libbrownie.h
libbrownie/Makefile
libbrownie/drd64_libbrownie.h
libdrd64/drd64_libdrd64_cinfo.h
libdrd64/drd64_libdrd64_cmd_attach.c

index c3a0b2b..84679bc 100644 (file)
@@ -105,7 +105,8 @@ all:        $(DEBUGD_TARGET) \
 #
 #
 $(DEBUGD_TARGET): $(DEBUGD_OBJS)
-       $(CC) -o $(DEBUGD_TARGET) $(FLAGS_DEBUG) $(DEBUGD_OBJS)
+       $(CC) -o $(DEBUGD_TARGET) $(FLAGS_DEBUG) $(DEBUGD_OBJS) \
+                       -l$(LINK_LIBS) -L$(LINK_LIBDIR) 
        cp $(DEBUGD_TARGET) ..
 
 drd64_debugd_main.o: drd64_debugd_main.c $(DEBUGD_HEADER)
index 2719e5a..cf9923a 100644 (file)
@@ -99,8 +99,10 @@ int
        Drd64_Server_RecvSocket_InitReadBuffer();
 
        /* Create Socket from Local Client or Marshald */
-       p_debugd->i_socket_debugd
-               = Drd64_Server_Socket_InitSocket_Local( p_debugd->str_socketname );
+       /* GOMI : Drd64_Server_Socket_InitSocket_Local( p_debugd->str_socketname ); */
+       p_debugd->i_socket_debugd =
+               Drd64_LibBrownie_Socket_InitSocketServer_Local(
+                       p_debugd->str_socketname );
        if( 0 > p_debugd->i_socket_debugd )     {
                return 0x01;
        }
index cce2a5e..ccb7c66 100644 (file)
@@ -64,8 +64,9 @@ int
        p_phead->i_error                = 0x00;
 
        /* Phase 2 : Create Local-Marshald Socket ------*/
+       /* GOMI : Drd64_Server_Socket_InitSocket_Local_Client( */
        i_socket_temp   =
-               Drd64_Server_Socket_InitSocket_Local_Client(
+               Drd64_LibBrownie_Socket_InitSocketClient_Local(
                                                DRD64_SOCKET_LOCAL_NAME_MARSHALD ); 
        if( 0 > i_socket_temp ) {
                return 0x01;
index d23b761..16be93d 100644 (file)
@@ -57,8 +57,11 @@ Drd64_Marshald_ConnectInfo   *
 
                if( DRD64_MARSHALD_CINFOTYPE_CLIENT
                                                                == p_cinfo->b_cinfo_type )      {
-                       if( 0x00 == Drd64_Server_INetAddr_CmpInAddr( p_addr,
+                       /* GOMI: if( 0x00 == Drd64_Server_INetAddr_CmpInAddr( p_addr,
                                                                &(p_cinfo->t_dest_addr_inet)) )
+                               { return p_cinfo; } */
+                       if( 0x00 == Drd64_LibBrownie_INetAddr_CmpInAddr(
+                                                       p_addr, &(p_cinfo->t_dest_addr_inet)) )
                                { return p_cinfo; }
                }
        }
index 86cfab2..95c2d21 100644 (file)
@@ -279,26 +279,37 @@ int
                p_cinfo_now->b_cinfo_type               = DRD64_MARSHALD_CINFOTYPE_DEBUG;
                p_cinfo_now->i_cinfo_refcount   = 1;
 
-               Drd64_Server_INetAddr_SetInAddr_LocalHost(
+               /* GOMI : Drd64_Server_INetAddr_SetInAddr_LocalHost(
+                                                       &(p_cinfo_now->t_dest_addr_inet) ); */
+               Drd64_LibBrownie_INetAddr_SetInAddr_LocalHost(
                                                        &(p_cinfo_now->t_dest_addr_inet) );
                p_cinfo_now->i_dest_cinfo_id            = -1;
                p_cinfo_now->i_dest_socket                      = -1;   /* Set Value is After */
                strncpy( p_cinfo_now->str_dest_addr_local,
                                        str_sockname_server, DRD64_MAX_PATH );
 
-               Drd64_Server_INetAddr_CopyInAddr(
+               /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                                       &(p_cinfo_now->t_src_addr_inet),
+                                       &(p_cinfo_marshald->t_client_addr_inet) ); */
+               Drd64_LibBrownie_INetAddr_CopyInAddr(
                                        &(p_cinfo_now->t_src_addr_inet),
                                        &(p_cinfo_marshald->t_client_addr_inet) );
                p_cinfo_now->i_src_cinfo_id                     = p_phead->i_cid_dest;
                p_cinfo_now->i_src_socket                       = p_cinfo_marshald->i_src_socket;
 
-               Drd64_Server_INetAddr_CopyInAddr(
+               /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                                                       &(p_cinfo_now->t_prog_addr_inet),
+                                                       &(p_attach->t_prog_addr) ); */
+               Drd64_LibBrownie_INetAddr_CopyInAddr(
                                                        &(p_cinfo_now->t_prog_addr_inet),
                                                        &(p_attach->t_prog_addr) );
                p_cinfo_now->i_prog_pid                         = p_attach->i_prog_pid;
                p_cinfo_now->i_debugd_pid                       = i_pid_debugd;
 
-               Drd64_Server_INetAddr_CopyInAddr(
+               /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                                                       &(p_cinfo_now->t_client_addr_inet),
+                                                       &(p_cinfo_marshald->t_client_addr_inet) ); */
+               Drd64_LibBrownie_INetAddr_CopyInAddr(
                                                        &(p_cinfo_now->t_client_addr_inet),
                                                        &(p_cinfo_marshald->t_client_addr_inet) );
                p_cinfo_now->i_client_pid                       = p_cinfo_marshald->i_client_pid;
@@ -348,7 +359,10 @@ int
        if( -1 == i_cmd_status )
                { return i_result; }
        
-       i_inet_flag     = Drd64_Server_INetAddr_CmpInAddr(
+       /* GOMI : i_inet_flag   = Drd64_Server_INetAddr_CmpInAddr(
+                                               &(p_attachreq->t_prog_addr),
+                                               &(p_marshald->t_marshald_addr) );*/
+       i_inet_flag     = Drd64_LibBrownie_INetAddr_CmpInAddr(
                                                &(p_attachreq->t_prog_addr),
                                                &(p_marshald->t_marshald_addr) );
 
index 3dc63d4..9fff96c 100644 (file)
@@ -91,7 +91,10 @@ int
        p_cinfo->i_dest_socket                  = -1;
        p_cinfo->str_dest_addr_local[0] = '\0'; 
 
-       Drd64_Server_INetAddr_CopyInAddr(
+       /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                                               &(p_cinfo->t_src_addr_inet),
+                                               &(p_connect->t_client_addr_inet) ); */
+       Drd64_LibBrownie_INetAddr_CopyInAddr(
                                                &(p_cinfo->t_src_addr_inet),
                                                &(p_connect->t_client_addr_inet) );
        p_cinfo->i_src_cinfo_id                 = p_connect->i_client_cinfo_id;
@@ -102,7 +105,10 @@ int
 
        p_cinfo->i_debugd_pid                   = -1;
 
-       Drd64_Server_INetAddr_CopyInAddr(
+       /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                               &(p_cinfo->t_client_addr_inet),
+                               &(p_connect->t_client_addr_inet) ); */
+       Drd64_LibBrownie_INetAddr_CopyInAddr(
                                &(p_cinfo->t_client_addr_inet),
                                &(p_connect->t_client_addr_inet) );
        p_cinfo->i_client_pid   = p_connect->i_client_pid;
index bf66deb..dc718ab 100644 (file)
@@ -91,23 +91,27 @@ int
        if( 0x00 != i_err )             { return i_err; }
 
        /* */
+       /* GOMI : Drd64_Server_Socket_InitSocket_Local */
        p_marshald->i_socket_local
-               = Drd64_Server_Socket_InitSocket_Local(
+               = Drd64_LibBrownie_Socket_InitSocketServer_Local(
                                        DRD64_SOCKET_LOCAL_NAME_MARSHALD );
        if( 0 > p_marshald->i_socket_local )    { return 0x01; }
        DRD64_DEBUG_PRINT("Socket(Local)",p_marshald->i_socket_local,
                                                                                                "errno",errno,NULL,0);
 
        /* */
-       p_marshald->i_socket_inet
-               = Drd64_Server_Socket_InitSocket_INet(
+       /* GOMI : Drd64_Server_Socket_InitSocket_INet( */
+       p_marshald->i_socket_inet =
+               Drd64_LibBrownie_Socket_InitSocketServer_INet(
                                        "INADDR_ANY", DRD64_SOCKET_NETWORK_PORT );
        if( 0 > p_marshald->i_socket_inet )     { return 0x01; }
        DRD64_DEBUG_PRINT("Socket(INet)",p_marshald->i_socket_inet,
                                                                                                "errno",errno,NULL,0);
 
        /* */
-       i_err   = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+       /* GOMI : i_err = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+                                                               &(p_marshald->t_marshald_addr) ); */
+       i_err   = Drd64_LibBrownie_INetAddr_SetInAddr_LocalHost(
                                                                &(p_marshald->t_marshald_addr) );
        if( 0x00 != i_err )             { return 0x02; }
 
index d1fc091..82f510e 100644 (file)
@@ -86,14 +86,17 @@ Drd64_Marshald_ConnectInfo *
        p_connect->i_client_pid                 = getpid();
        p_connect->i_client_cinfo_id    = p_cinfo->i_cinfo_id;
        p_connect->i_connect_id                 = -1;
-       i_err   = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+       /* GOMI : i_err = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+                                                               &(p_connect->t_client_addr_inet) ); */
+       i_err   = Drd64_LibBrownie_INetAddr_SetInAddr_LocalHost(
                                                                &(p_connect->t_client_addr_inet) );
        /* XXX : i_err Handling  */
        
 
        /* Phase 3 : Create INet-Marshald Socket ------*/
+       /* GOMI:        Drd64_Server_Socket_InitSocketClient_INet( */
        i_socket_inet   =
-               Drd64_Server_Socket_InitSocketClient_INet(
+               Drd64_LibBrownie_Socket_InitSocketClient_INet(
                                                p_addr_dest, DRD64_SOCKET_NETWORK_PORT ); 
 
        p_recv = Drd64_Server_RecvStatus_AllocRecvStatus(
@@ -116,7 +119,10 @@ Drd64_Marshald_ConnectInfo *
        p_cinfo->b_cinfo_type                   = DRD64_MARSHALD_CINFOTYPE_CLIENT;
        p_cinfo->i_cinfo_refcount               = 1;
 
-       Drd64_Server_INetAddr_CopyInAddr(
+       /* GOMI : Drd64_Server_INetAddr_CopyInAddr(
+                                               &(p_cinfo->t_dest_addr_inet),
+                                               p_addr_dest ); */
+       Drd64_LibBrownie_INetAddr_CopyInAddr(
                                                &(p_cinfo->t_dest_addr_inet),
                                                p_addr_dest );
        /* p_cinfo->i_dest_cinfo_id             = p_connect->i_connect_id; 
@@ -133,7 +139,9 @@ Drd64_Marshald_ConnectInfo *
 
        p_cinfo->i_debugd_pid                   = -1;
 
-       i_err   = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+       /* GOMI : i_err = Drd64_Server_INetAddr_SetInAddr_LocalHost(
+                                                               &(p_cinfo->t_client_addr_inet) ); */
+       i_err   = Drd64_LibBrownie_INetAddr_SetInAddr_LocalHost(
                                                                &(p_cinfo->t_client_addr_inet) );
        p_cinfo->i_client_pid                   = getpid();
 
index 9fd3969..0556c8f 100644 (file)
@@ -38,6 +38,7 @@ Comment:
 #define DRD64_HEADER_DEFINES
 
 #define DRD64_MAX_PATH  256
+#define        DRD64_SUNPATH_LEN       104
 
 #endif /* DRD64_HEADER_XXX */
 
index c87e282..53d1288 100644 (file)
@@ -47,6 +47,7 @@ Comment:
        #define LIBBROWNIE_FUNC extern
 #endif
 
+/* drd64_libbrownie_error.c Functions ========================*/
 LIBBROWNIE_FUNC
        int
                Drd64_LibBrownie_Error_SetErrorInfo(
@@ -70,6 +71,31 @@ LIBBROWNIE_FUNC
                        int i_history_id );
 
 
+/* drd64_libbrownie_inetaddr.c Functions =====================*/
+LIBBROWNIE_FUNC
+int
+       Drd64_LibBrownie_INetAddr_CmpInAddr(
+               struct  in_addr *p_dest,
+               struct  in_addr *p_src );
+
+LIBBROWNIE_FUNC
+       int
+               Drd64_LibBrownie_INetAddr_CopyInAddr(
+                       struct  in_addr *p_dest,
+                       struct  in_addr *p_src );
+
+LIBBROWNIE_FUNC
+       int
+               Drd64_LibBrownie_INetAddr_SetInAddr_fromFQDN(
+                       struct  in_addr *p_addr,
+                       char    *pstr_hostname );
+
+LIBBROWNIE_FUNC
+       int
+               Drd64_LibBrownie_INetAddr_SetInAddr_LocalHost(
+                       struct  in_addr *p_addr );
+
+
 #endif /* DRD64_HEADER_XXX */
 
 /* EOF of drd64_.h ----------------------------------- */
index f3b290f..b5f1042 100644 (file)
@@ -49,7 +49,9 @@ USER_HEADER =
 FLAGS_DEBUG = -g
 
 LIBBROWNIE_TARGET = libbrownie.a
-LIBBROWNIE_OBJS = drd64_libbrownie_error.o
+LIBBROWNIE_OBJS = drd64_libbrownie_error.o \
+                                       drd64_libbrownie_inetaddr.o \
+                                       drd64_libbrownie_socket.o
 LIBBROWNIE_HEADER = drd64_libbrownie.h \
                                        drd64_libbrownie_error.h \
                                        $(SUPER_HEADER)
@@ -66,6 +68,13 @@ drd64_libbrownie_error.o: drd64_libbrownie_error.c $(LIBBROWNIE_HEADER)
        gcc -c -o drd64_libbrownie_error.o $(FLAGS_DEBUG) \
                                drd64_libbrownie_error.c
 
+drd64_libbrownie_inetaddr.o: drd64_libbrownie_inetaddr.c $(LIBBROWNIE_HEADER)
+       gcc -c -o drd64_libbrownie_inetaddr.o $(FLAGS_DEBUG) \
+                               drd64_libbrownie_inetaddr.c
+
+drd64_libbrownie_socket.o: drd64_libbrownie_socket.c $(LIBBROWNIE_HEADER)
+       gcc -c -o drd64_libbrownie_socket.o $(FLAGS_DEBUG) \
+                               drd64_libbrownie_socket.c
 
 clean:
        rm -f *.o
index e1b5862..8f19bc4 100644 (file)
@@ -40,6 +40,12 @@ Comment:
 #include<stdio.h>
 #include<stdlib.h>
 #include<string.h>
+#include<netdb.h>
+#include<sys/types.h>
+#include<sys/socket.h>
+#include<sys/un.h>
+#include<netinet/in.h>
+#include<netinet/tcp.h>
 #include"../include/drd64_types.h"
 #include"../include/drd64_defines.h"
 #include"../include/drd64_error.h"
index 9d3b962..7efd605 100644 (file)
@@ -45,10 +45,15 @@ Comment:
 
 #define        DRD64_LIBDRD64_CINFO_UNITS      32
 
+#define        DRD64_LIBDRD64_CINFO_COMMTYPE_LOCAL             0x01
+#define        DRD64_LIBDRD64_CINFO_COMMTYPE_INET              0x02
+
+
 typedef        struct {
        /* Section 1: ConnectInfo System Info ---*/
        int             i_id;
        Byte    b_commtype;
+       Byte    b_status;
 
        //int           i_pid_dest;
 
index e5813bf..3504e03 100644 (file)
@@ -36,6 +36,37 @@ Comment:
 
 #include"drd64_libdrd64.h"
 
+
+int
+       Drd64_LibDrd64_Cmd_Attach_Link(
+               Drd64_LibDrd64_ConnectInfo      *p_cinfo )
+{
+       int             i_err;
+       int             i_socket_marshald;
+       Byte    b_commtype;
+       Drd64_PacketHeader                      *p_phead;
+       Drd64_PacketData_AttachRequest          *p_attach;
+       /* Phase 1 : Set Packet Data --- */
+       p_phead = (Drd64_PacketHeader *)gp_buffer;
+
+       Drd64_LibDrd64_Packet_SetPacketHeader(
+                                                       p_phead,
+                                                       DRD64_CONNECTID_NONE,
+                                                       DRD64_COMMAND_ATTACH_LINK,
+                                                       0 );
+
+       /* Phase 2 : Create Socket for Debugd */
+       
+
+
+       /* Phase 3 : Send & Recv. Attach-Link Cmd */
+
+
+       return 0x00;
+}
+
+
+
 int
        Drd64_LibDrd64_Cmd_Attach_Request(
                Drd64_LibDrd64_ConnectInfo      *p_cinfo,
@@ -44,6 +75,7 @@ int
 {
        int             i_err;
        int             i_socket_marshald;
+       Byte    b_commtype;
        Drd64_PacketHeader                      *p_phead;
        Drd64_PacketData_AttachRequest          *p_attach;
 
@@ -62,10 +94,12 @@ int
        if( !strcmp( pstr_hostname, "localhost" ) )             {
                i_err   = Drd64_LibDrd64_INet_SetInAddr_LocalHost(
                                                &(p_attach->t_prog_addr) );
+               b_commtype      = DRD64_LIBDRD64_CINFO_COMMTYPE_LOCAL;
        }
        else    {
                i_err   = Drd64_LibDrd64_INet_SetInAddr(
                                                &(p_attach->t_prog_addr), pstr_hostname );
+               b_commtype      = DRD64_LIBDRD64_CINFO_COMMTYPE_INET;
        }
        if( 0x00 != i_err )             { return 0x01; }
 
@@ -85,6 +119,7 @@ int
        }
 
        /* Phase 3 : Set ConnectInfo from Result ---*/
+       p_cinfo->b_commtype             = b_commtype;
        p_cinfo->i_prog_pid             = i_prog_pid;
        
        p_cinfo->i_debugd_pid   = p_attach->i_debugd_pid;
@@ -123,6 +158,7 @@ int
        Drd64_LibDrd64_Cmd_Attach_Request( p_cinfo, i_prog_pid, pstr_hostname );
 
        /* Phase 2: Attach Link */
+       Drd64_LibDrd64_Cmd_Attach_Link( p_cinfo );
 
        /* Phase 3: Attach Report */