浏览代码

Minor changes

ambrop7 15 年之前
父节点
当前提交
2cce6616d6
共有 2 个文件被更改,包括 14 次插入49 次删除
  1. 14 29
      client/DatagramPeerIO.c
  2. 0 20
      client/DatagramPeerIO.h

+ 14 - 29
client/DatagramPeerIO.c

@@ -176,6 +176,7 @@ void free_receiving (DatagramPeerIO *o)
 void error_handler (DatagramPeerIO *o, int component, const void *data)
 {
     ASSERT(o->mode == DATAGRAMPEERIO_MODE_CONNECT || o->mode == DATAGRAMPEERIO_MODE_BIND)
+    DebugObject_Access(&o->d_obj);
     
     int error = *((int *)data);
     
@@ -212,8 +213,6 @@ void reset_mode (DatagramPeerIO *o)
         case DATAGRAMPEERIO_MODE_NONE:
             break;
         case DATAGRAMPEERIO_MODE_CONNECT:
-            // kill mode dead var
-            DEAD_KILL(o->mode_dead);
             // set default mode
             o->mode = DATAGRAMPEERIO_MODE_NONE;
             // free receiving
@@ -224,8 +223,6 @@ void reset_mode (DatagramPeerIO *o)
             BSocket_Free(&o->sock);
             break;
         case DATAGRAMPEERIO_MODE_BIND:
-            // kill mode dead var
-            DEAD_KILL(o->mode_dead);
             // set default mode
             o->mode = DATAGRAMPEERIO_MODE_NONE;
             // remove recv notifier handler
@@ -247,6 +244,7 @@ void reset_mode (DatagramPeerIO *o)
 void recv_decoder_notifier_handler (DatagramPeerIO *o, uint8_t *data, int data_len)
 {
     ASSERT(o->mode == DATAGRAMPEERIO_MODE_BIND)
+    DebugObject_Access(&o->d_obj);
     
     // obtain addresses from last received packet
     BAddr addr;
@@ -268,6 +266,7 @@ void recv_decoder_notifier_handler (DatagramPeerIO *o, uint8_t *data, int data_l
 void send_encoder_notifier_handler (DatagramPeerIO *o, uint8_t *data, int data_len)
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
+    DebugObject_Access(&o->d_obj);
     
     if (o->handler_otp_warning && SPProtoEncoder_GetOTPPosition(&o->send_encoder) == o->handler_otp_warning_num_used) { 
         o->handler_otp_warning(o->handler_otp_warning_user);
@@ -289,9 +288,6 @@ int DatagramPeerIO_Init (DatagramPeerIO *o, BReactor *reactor, int payload_mtu,
     o->payload_mtu = payload_mtu;
     o->sp_params = sp_params;
     
-    // init dead var
-    DEAD_INIT(o->dead);
-    
     // calculate SPProto payload MTU
     o->spproto_payload_mtu = spproto_payload_mtu_for_carrier_mtu(o->sp_params, socket_mtu);
     
@@ -311,7 +307,6 @@ int DatagramPeerIO_Init (DatagramPeerIO *o, BReactor *reactor, int payload_mtu,
         goto fail1;
     }
     
-    // init debug object
     DebugObject_Init(&o->d_obj);
     
     return 1;
@@ -322,7 +317,6 @@ fail1:
 
 void DatagramPeerIO_Free (DatagramPeerIO *o)
 {
-    // free debug object
     DebugObject_Free(&o->d_obj);
 
     // reset mode
@@ -330,25 +324,19 @@ void DatagramPeerIO_Free (DatagramPeerIO *o)
     
     // free persistent I/O objects
     free_persistent_io(o);
-    
-    // free dead var
-    DEAD_KILL(o->dead);
 }
 
 PacketPassInterface * DatagramPeerIO_GetSendInput (DatagramPeerIO *o)
 {
+    DebugObject_Access(&o->d_obj);
+    
     return FragmentProtoDisassembler_GetInput(&o->send_disassembler);
 }
 
-void DatagramPeerIO_Disconnect (DatagramPeerIO *o)
-{
-    // reset mode
-    reset_mode(o);
-}
-
 int DatagramPeerIO_Connect (DatagramPeerIO *o, BAddr addr)
 {
     ASSERT(BAddr_IsRecognized(&addr) && !BAddr_IsInvalid(&addr))
+    DebugObject_Access(&o->d_obj);
     
     // reset mode
     reset_mode(o);
@@ -377,9 +365,6 @@ int DatagramPeerIO_Connect (DatagramPeerIO *o, BAddr addr)
     // set mode
     o->mode = DATAGRAMPEERIO_MODE_CONNECT;
     
-    // init mode dead var
-    DEAD_INIT(o->mode_dead);
-    
     return 1;
     
 fail2:
@@ -391,6 +376,7 @@ fail1:
 int DatagramPeerIO_Bind (DatagramPeerIO *o, BAddr addr)
 {
     ASSERT(BAddr_IsRecognized(&addr) && !BAddr_IsInvalid(&addr))
+    DebugObject_Access(&o->d_obj);
     
     // reset mode
     reset_mode(o);
@@ -416,9 +402,6 @@ int DatagramPeerIO_Bind (DatagramPeerIO *o, BAddr addr)
     // set mode
     o->mode = DATAGRAMPEERIO_MODE_BIND;
     
-    // init mode dead var
-    DEAD_INIT(o->mode_dead);
-    
     // set sending not up
     o->bind_sending_up = 0;
     
@@ -430,14 +413,10 @@ fail1:
     return 0;
 }
 
-void DatagramPeerIO_Flush (DatagramPeerIO *o)
-{
-    BLog(BLOG_ERROR, "Flushing not implemented");
-}
-
 void DatagramPeerIO_SetEncryptionKey (DatagramPeerIO *o, uint8_t *encryption_key)
 {
     ASSERT(o->sp_params.encryption_mode != SPPROTO_ENCRYPTION_MODE_NONE)
+    DebugObject_Access(&o->d_obj);
     
     // set sending key
     SPProtoEncoder_SetEncryptionKey(&o->send_encoder, encryption_key);
@@ -449,6 +428,7 @@ void DatagramPeerIO_SetEncryptionKey (DatagramPeerIO *o, uint8_t *encryption_key
 void DatagramPeerIO_RemoveEncryptionKey (DatagramPeerIO *o)
 {
     ASSERT(o->sp_params.encryption_mode != SPPROTO_ENCRYPTION_MODE_NONE)
+    DebugObject_Access(&o->d_obj);
     
     // remove sending key
     SPProtoEncoder_RemoveEncryptionKey(&o->send_encoder);
@@ -460,6 +440,7 @@ void DatagramPeerIO_RemoveEncryptionKey (DatagramPeerIO *o)
 void DatagramPeerIO_SetOTPSendSeed (DatagramPeerIO *o, uint16_t seed_id, uint8_t *key, uint8_t *iv)
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
+    DebugObject_Access(&o->d_obj);
     
     // set sending seed
     SPProtoEncoder_SetOTPSeed(&o->send_encoder, seed_id, key, iv);
@@ -468,6 +449,7 @@ void DatagramPeerIO_SetOTPSendSeed (DatagramPeerIO *o, uint16_t seed_id, uint8_t
 void DatagramPeerIO_RemoveOTPSendSeed (DatagramPeerIO *o)
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
+    DebugObject_Access(&o->d_obj);
     
     // remove sending seed
     SPProtoEncoder_RemoveOTPSeed(&o->send_encoder);
@@ -476,6 +458,7 @@ void DatagramPeerIO_RemoveOTPSendSeed (DatagramPeerIO *o)
 void DatagramPeerIO_AddOTPRecvSeed (DatagramPeerIO *o, uint16_t seed_id, uint8_t *key, uint8_t *iv)
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
+    DebugObject_Access(&o->d_obj);
     
     // add receiving seed
     SPProtoDecoder_AddOTPSeed(&o->recv_decoder, seed_id, key, iv);
@@ -484,6 +467,7 @@ void DatagramPeerIO_AddOTPRecvSeed (DatagramPeerIO *o, uint16_t seed_id, uint8_t
 void DatagramPeerIO_RemoveOTPRecvSeeds (DatagramPeerIO *o)
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
+    DebugObject_Access(&o->d_obj);
     
     // remove receiving seeds
     SPProtoDecoder_RemoveOTPSeeds(&o->recv_decoder);
@@ -493,6 +477,7 @@ void DatagramPeerIO_SetOTPWarningHandler (DatagramPeerIO *o, DatagramPeerIO_hand
 {
     ASSERT(SPPROTO_HAVE_OTP(o->sp_params))
     ASSERT(!handler || num_used > 0)
+    DebugObject_Access(&o->d_obj);
     
     o->handler_otp_warning = handler;
     o->handler_otp_warning_user = user;

+ 0 - 20
client/DatagramPeerIO.h

@@ -29,7 +29,6 @@
 
 #include <stdint.h>
 
-#include <misc/dead.h>
 #include <misc/debug.h>
 #include <protocol/spproto.h>
 #include <protocol/fragmentproto.h>
@@ -78,7 +77,6 @@ typedef void (*DatagramPeerIO_handler_otp_warning) (void *user);
  */
 typedef struct {
     DebugObject d_obj;
-    dead_t dead;
     BReactor *reactor;
     int payload_mtu;
     struct spproto_security_params sp_params;
@@ -111,7 +109,6 @@ typedef struct {
     
     // mode
     int mode;
-    dead_t mode_dead;
     
     // in binded mode, whether sending is up
     int bind_sending_up;
@@ -161,14 +158,6 @@ void DatagramPeerIO_Free (DatagramPeerIO *o);
  */
 PacketPassInterface * DatagramPeerIO_GetSendInput (DatagramPeerIO *o);
 
-/**
- * Breaks down the connection if one is configured.
- * The interface enters default mode.
- *
- * @param o the object
- */
-void DatagramPeerIO_Disconnect (DatagramPeerIO *o);
-
 /**
  * Attempts to establish connection to the peer which has bound to an address.
  * On success, the interface enters connecting mode.
@@ -191,15 +180,6 @@ int DatagramPeerIO_Connect (DatagramPeerIO *o, BAddr addr) WARN_UNUSED;
  */
 int DatagramPeerIO_Bind (DatagramPeerIO *o, BAddr addr) WARN_UNUSED;
 
-/**
- * Removes any internally buffered packets for sending.
- * This can be used when configuring a new connecion to prevent packets encoded with
- * previous parameters from being sent over the new connection.
- *
- * @param o the object
- */
-void DatagramPeerIO_Flush (DatagramPeerIO *o);
-
 /**
  * Sets the encryption key to use for sending and receiving.
  * Encryption must be enabled.