[DCCP]: Introduce dccp_rx_hist_find_entry
authorIan McDonald <ian.mcdonald@jandi.co.nz>
Sun, 27 Aug 2006 02:07:36 +0000 (19:07 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 27 Aug 2006 02:07:36 +0000 (19:07 -0700)
This adds a new function dccp_rx_hist_find_entry.

Signed off by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dccp/ccids/lib/packet_history.c
net/dccp/ccids/lib/packet_history.h

index 7b6b03e..420c60f 100644 (file)
@@ -365,6 +365,25 @@ struct dccp_tx_hist_entry *
 
 EXPORT_SYMBOL_GPL(dccp_tx_hist_find_entry);
 
+int dccp_rx_hist_find_entry(const struct list_head *list, const u64 seq,
+   u8 *ccval)
+{
+       struct dccp_rx_hist_entry *packet = NULL, *entry;
+
+       list_for_each_entry(entry, list, dccphrx_node)
+               if (entry->dccphrx_seqno == seq) {
+                       packet = entry;
+                       break;
+               }
+
+       if (packet)
+               *ccval = packet->dccphrx_ccval;
+
+       return packet != NULL;
+}
+
+EXPORT_SYMBOL_GPL(dccp_rx_hist_find_entry);
+
 void dccp_tx_hist_purge_older(struct dccp_tx_hist *hist,
                              struct list_head *list,
                              struct dccp_tx_hist_entry *packet)
index 27c4309..aea9c5d 100644 (file)
@@ -106,6 +106,8 @@ static inline void dccp_tx_hist_entry_delete(struct dccp_tx_hist *hist,
 extern struct dccp_tx_hist_entry *
                        dccp_tx_hist_find_entry(const struct list_head *list,
                                                const u64 seq);
+extern int dccp_rx_hist_find_entry(const struct list_head *list, const u64 seq,
+   u8 *ccval);
 
 static inline void dccp_tx_hist_add_entry(struct list_head *list,
                                          struct dccp_tx_hist_entry *entry)