# HG changeset patch
# Node ID 4ee2aaf57823
# Parent  7d671b1ab977
diff --git a/libpurple/blistnode.h b/libpurple/blistnode.h
--- a/libpurple/blistnode.h
+++ b/libpurple/blistnode.h
@@ -106,7 +106,10 @@ PurpleBlistNode *purple_blist_node_next(
  *     purple_blist_node_get_sibling_prev(), purple_blist_node_next().
  *
  * Returns: (transfer none): The parent node.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 PurpleBlistNode *purple_blist_node_get_parent(PurpleBlistNode *node);
 
 /**
@@ -119,7 +122,10 @@ PurpleBlistNode *purple_blist_node_get_p
  *     purple_blist_node_get_sibling_prev(), purple_blist_node_next().
  *
  * Returns: (transfer none): The child node.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 PurpleBlistNode *purple_blist_node_get_first_child(PurpleBlistNode *node);
 
 /**
@@ -132,7 +138,10 @@ PurpleBlistNode *purple_blist_node_get_f
  *     purple_blist_node_get_sibling_prev(), purple_blist_node_next().
  *
  * Returns: (transfer none): The sibling node.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 PurpleBlistNode *purple_blist_node_get_sibling_next(PurpleBlistNode *node);
 
 /**
@@ -145,7 +154,10 @@ PurpleBlistNode *purple_blist_node_get_s
  *     purple_blist_node_get_sibling_next(), purple_blist_node_next().
  *
  * Returns: (transfer none): The sibling node.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 PurpleBlistNode *purple_blist_node_get_sibling_prev(PurpleBlistNode *node);
 
 /**
diff --git a/libpurple/chat.h b/libpurple/chat.h
--- a/libpurple/chat.h
+++ b/libpurple/chat.h
@@ -139,7 +139,10 @@ PurpleGroup *purple_chat_get_group(Purpl
  * Returns the account the chat belongs to.
  *
  * Returns: (transfer none): The account the chat belongs to.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 PurpleAccount *purple_chat_get_account(PurpleChat *chat);
 
 /**
@@ -149,7 +152,10 @@ PurpleAccount *purple_chat_get_account(P
  * Get a hashtable containing information about a chat.
  *
  * Returns: (transfer none):  The hashtable.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 GHashTable *purple_chat_get_components(PurpleChat *chat);
 
 G_END_DECLS
diff --git a/libpurple/purpleroomlistroom.h b/libpurple/purpleroomlistroom.h
--- a/libpurple/purpleroomlistroom.h
+++ b/libpurple/purpleroomlistroom.h
@@ -81,9 +81,9 @@ PurpleRoomlistRoom *purple_roomlist_room
  *
  * Returns: The name of @room.
  *
- * Since: 3.0.0
+ * Since: 2.4.0
  */
-PURPLE_AVAILABLE_IN_3_0
+PURPLE_AVAILABLE_IN_2_4
 const gchar *purple_roomlist_room_get_name(PurpleRoomlistRoom *room);
 
 /**
diff --git a/libpurple/purpleversion.h b/libpurple/purpleversion.h
--- a/libpurple/purpleversion.h
+++ b/libpurple/purpleversion.h
@@ -106,6 +106,22 @@
 #define PURPLE_AVAILABLE_IN_ALL _PURPLE_EXTERN
 
 /**
+ * PURPLE_VERSION_2_4:
+ *
+ * A macro that evaluates to the 2.4 version of libpurple, in a format that
+ * can be used by the C pre-processor.
+ *
+ * Since: 3.0.0
+ */
+#define PURPLE_VERSION_2_4 (G_ENCODE_VERSION(2, 4))
+
+#if PURPLE_VERSION_MAX_ALLOWED < PURPLE_VERSION_2_4
+#define PURPLE_AVAILABLE_IN_2_4 PURPLE_UNAVAILABLE(2, 4)
+#else
+#define PURPLE_AVAILABLE_IN_2_4 _PURPLE_EXTERN
+#endif
+
+/**
  * PURPLE_VERSION_2_5:
  *
  * A macro that evaluates to the 2.5 version of libpurple, in a format that
diff --git a/libpurple/server.h b/libpurple/server.h
--- a/libpurple/server.h
+++ b/libpurple/server.h
@@ -177,7 +177,10 @@ void purple_serv_got_alias(PurpleConnect
  * A protocol should call this when it retrieves a private alias from
  * the server.  Private aliases are the aliases the user sets, while public
  * aliases are the aliases or display names that buddies set for themselves.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 void purple_serv_got_private_alias(PurpleConnection *gc, const char *who, const char *alias);
 
 
diff --git a/libpurple/xfer.h b/libpurple/xfer.h
--- a/libpurple/xfer.h
+++ b/libpurple/xfer.h
@@ -412,7 +412,10 @@ guint16 purple_xfer_get_remote_port(Purp
  * Returns the time the transfer of a file started.
  *
  * Returns: The monotonic time when the transfer started.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 gint64 purple_xfer_get_start_time(PurpleXfer *xfer);
 
 /**
@@ -422,7 +425,10 @@ gint64 purple_xfer_get_start_time(Purple
  * Returns the time the transfer of a file ended.
  *
  * Returns: The monotonic time when the transfer ended.
+ *
+ * Since: 2.4.0
  */
+PURPLE_AVAILABLE_IN_2_4
 gint64 purple_xfer_get_end_time(PurpleXfer *xfer);
 
 /**
