GNUNET_MQ_get_last_envelope()
authorGabor X Toth <*@tg-x.net>
Wed, 17 Aug 2016 22:28:47 +0000 (22:28 +0000)
committerGabor X Toth <*@tg-x.net>
Wed, 17 Aug 2016 22:28:47 +0000 (22:28 +0000)
src/include/gnunet_mq_lib.h
src/util/mq.c

index 8f0c6ee3fb1c5a6c411d33ff1bce7c2520b27201..d383adbb5e259c04e1d69ee30cad80fdd6ec243e 100644 (file)
@@ -434,8 +434,8 @@ GNUNET_MQ_discard (struct GNUNET_MQ_Envelope *mqm);
 
 
 /**
- * Function to obtain the current envelope from
- * within #GNUNET_MQ_SendImpl implementations.
+ * Function to obtain the current envelope
+ * from within #GNUNET_MQ_SendImpl implementations.
  *
  * @param mq message queue to interrogate
  * @return the current envelope
@@ -444,6 +444,16 @@ struct GNUNET_MQ_Envelope *
 GNUNET_MQ_get_current_envelope (struct GNUNET_MQ_Handle *mq);
 
 
+/**
+ * Function to obtain the last envelope in the queue.
+ *
+ * @param mq message queue to interrogate
+ * @return the last envelope in the queue
+ */
+struct GNUNET_MQ_Envelope *
+GNUNET_MQ_get_last_envelope (struct GNUNET_MQ_Handle *mq);
+
+
 /**
  * Set application-specific options for this envelope.
  * Overrides the options set for the queue with
index bea5eb30452b8b1ebe84d19b91c0ca957c57970e..b971fdefd95214787d73a127c3fa5c978bc8b548 100644 (file)
@@ -82,7 +82,7 @@ struct GNUNET_MQ_Envelope
    * Did the application call #GNUNET_MQ_env_set_options()?
    */
   int have_custom_options;
-  
+
 };
 
 
@@ -159,7 +159,7 @@ struct GNUNET_MQ_Handle
    * #GNUNET_MQ_set_options().  Default is 0.
    */
   const void *default_extra;
-  
+
   /**
    * Flags that were set for this queue by
    * #GNUNET_MQ_set_options().   Default is 0.
@@ -1074,8 +1074,8 @@ GNUNET_MQ_send_cancel (struct GNUNET_MQ_Envelope *ev)
 
 
 /**
- * Function to obtain the current envelope from
- * within #GNUNET_MQ_SendImpl implementations.
+ * Function to obtain the current envelope
+ * from within #GNUNET_MQ_SendImpl implementations.
  *
  * @param mq message queue to interrogate
  * @return the current envelope
@@ -1087,6 +1087,19 @@ GNUNET_MQ_get_current_envelope (struct GNUNET_MQ_Handle *mq)
 }
 
 
+/**
+ * Function to obtain the last envelope in the queue.
+ *
+ * @param mq message queue to interrogate
+ * @return the last envelope in the queue
+ */
+struct GNUNET_MQ_Envelope *
+GNUNET_MQ_get_last_envelope (struct GNUNET_MQ_Handle *mq)
+{
+  return mq->envelope_tail;
+}
+
+
 /**
  * Set application-specific options for this envelope.
  * Overrides the options set for the queue with
@@ -1119,7 +1132,7 @@ GNUNET_MQ_env_get_options (struct GNUNET_MQ_Envelope *env,
                           uint64_t *flags)
 {
   struct GNUNET_MQ_Handle *mq = env->parent_queue;
-  
+
   if (GNUNET_YES == env->have_custom_options)
   {
     *flags = env->flags;