From cfeccc1b56def35ac586ac2c09ac70b523b59ef5 Mon Sep 17 00:00:00 2001 From: Gabor X Toth <*@tg-x.net> Date: Tue, 27 May 2014 11:10:35 +0000 Subject: add social service --- src/include/gnunet_env_lib.h | 3 ++- src/include/gnunet_protocols.h | 40 +++++++++++++++++++++++++++++++------ src/include/gnunet_social_service.h | 27 +++++++++++++++---------- 3 files changed, 52 insertions(+), 18 deletions(-) (limited to 'src/include') diff --git a/src/include/gnunet_env_lib.h b/src/include/gnunet_env_lib.h index 8ff37b7a7..5d1d013a3 100644 --- a/src/include/gnunet_env_lib.h +++ b/src/include/gnunet_env_lib.h @@ -93,7 +93,8 @@ enum GNUNET_ENV_Type /** * PSYC state modifier. */ -struct GNUNET_ENV_Modifier { +struct GNUNET_ENV_Modifier +{ /** * State operation. */ diff --git a/src/include/gnunet_protocols.h b/src/include/gnunet_protocols.h index fba99ff43..855ee0703 100644 --- a/src/include/gnunet_protocols.h +++ b/src/include/gnunet_protocols.h @@ -2171,13 +2171,13 @@ extern "C" /** S->C: result of an operation */ #define GNUNET_MESSAGE_TYPE_PSYC_RESULT_CODE 680 -/** C->S: request to start a master */ +/** C->S: request to start a channel as a master */ #define GNUNET_MESSAGE_TYPE_PSYC_MASTER_START 681 /** S->C: master start acknowledgement */ #define GNUNET_MESSAGE_TYPE_PSYC_MASTER_START_ACK 682 -/** C->S: request to start a master */ +/** C->S: request to join a channel as a slave */ #define GNUNET_MESSAGE_TYPE_PSYC_SLAVE_JOIN 683 /** S->C: slave join acknowledgement */ @@ -2489,14 +2489,42 @@ extern "C" #define GNUNET_MESSAGE_TYPE_PEERSTORE_ITERATE_END 825 -/** - * Next available: 840 - */ - /******************************************************************************* * SOCIAL message types ******************************************************************************/ +/** + * C: client + * S: service + * P: PSYC + */ + +/** S->C: result of an operation */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_RESULT_CODE 840 + +/** C->S: request to enter a home as the host */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_HOME_ENTER 841 + +/** S->C: home enter acknowledgement */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_HOME_ENTER_ACK 842 + +/** C->S: request to enter a place as a guest */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_PLACE_ENTER 843 + +/** S->C: guest join acknowledgement */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_PLACE_ENTER_ACK 844 + +/** P->S->C: incoming join request from PSYC */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_JOIN_REQUEST 847 + +/** C->S->P: decision about a join request */ +#define GNUNET_MESSAGE_TYPE_SOCIAL_JOIN_DECISION 848 + + +/** + * Next available: 880 + */ + /** * Type used to match 'all' message types. diff --git a/src/include/gnunet_social_service.h b/src/include/gnunet_social_service.h index 98ad88346..ba698aee6 100644 --- a/src/include/gnunet_social_service.h +++ b/src/include/gnunet_social_service.h @@ -36,9 +36,9 @@ extern "C" #endif #include "gnunet_util_lib.h" -#include "gnunet_psyc_lib.h" +#include "gnunet_env_lib.h" +#include "gnunet_identity_service.h" #include "gnunet_psyc_service.h" -#include "gnunet_multicast_service.h" /** @@ -94,7 +94,7 @@ typedef int const char *full_method_name, uint64_t message_id, size_t modifier_count, - GNUNET_PSYC_Modifier *modifiers, + struct GNUNET_ENV_Modifier *modifiers, uint64_t data_offset, const void *data, size_t data_size, @@ -173,7 +173,7 @@ typedef void struct GNUNET_SOCIAL_Nym *nym, size_t variable_count, const char *method_name, - GNUNET_PSYC_Modifier *variables, + struct GNUNET_ENV_Modifier *variables, const void *data, size_t data_size); @@ -193,7 +193,7 @@ typedef void (*GNUNET_SOCIAL_FarewellCallback) (void *cls, struct GNUNET_SOCIAL_Nym *nym, size_t variable_count, - GNUNET_PSYC_Modifier *variables); + struct GNUNET_ENV_Modifier *variables); /** @@ -313,22 +313,24 @@ GNUNET_SOCIAL_home_advertise (struct GNUNET_SOCIAL_Home *home, const char *name, size_t peer_count, const struct GNUNET_PeerIdentity *peers, - GNUNET_TIME_Relative expiration_time, + struct GNUNET_TIME_Relative expiration_time, const char *password); /** * Flags for announcements in a home. */ -enum GNUNET_PSYC_AnnouncementFlags +enum GNUNET_SOCIAL_AnnounceFlags { + GNUNET_SOCIAL_ANNOUNCE_NONE = 0, + /** * Whether this announcement removes all objects from the home. * * New objects can be still added to the now empty home using the @e env * parameter of the same announcement. */ - GNUNET_SOCIAL_ANNOUNCEMENT_CLEAR_OBJECTS = 1 << 0 + GNUNET_SOCIAL_ANNOUNCE_CLEAR_OBJECTS = 1 << 0 }; @@ -359,7 +361,7 @@ GNUNET_SOCIAL_home_announce (struct GNUNET_SOCIAL_Home *home, const struct GNUNET_ENV_Environment *env, GNUNET_CONNECTION_TransmitReadyNotify notify, void *notify_cls, - GNUNET_SOCIAL_AnnouncementFlags flags); + enum GNUNET_SOCIAL_AnnounceFlags flags); /** @@ -529,7 +531,10 @@ GNUNET_SOCIAL_place_look_at (struct GNUNET_SOCIAL_Place *place, /** * Flags for talking to the host of a place. */ -enum GNUNET_SOCIAL_TalkFlags; +enum GNUNET_SOCIAL_TalkFlags +{ + GNUNET_SOCIAL_TALK_NONE = 0 +}; /** @@ -555,7 +560,7 @@ GNUNET_SOCIAL_place_talk (struct GNUNET_SOCIAL_Place *place, const struct GNUNET_ENV_Environment *env, GNUNET_CONNECTION_TransmitReadyNotify notify, void *notify_cls, - GNUNET_SOCIAL_TalkFlags flags); + enum GNUNET_SOCIAL_TalkFlags flags); /** -- cgit v1.2.3