forked from cory/tildefriends
		
	ssb.js is now entirely in C. Usual disclaimers about it not being amazingly well tested.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4111 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
		
							
								
								
									
										28
									
								
								src/ssb.db.c
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								src/ssb.db.c
									
									
									
									
									
								
							| @@ -1102,6 +1102,34 @@ const char** tf_ssb_db_following_deep(tf_ssb_t* ssb, const char** ids, int count | ||||
| 	return (const char**)result; | ||||
| } | ||||
|  | ||||
| typedef struct _identities_t | ||||
| { | ||||
| 	const char** ids; | ||||
| 	int count; | ||||
| } identities_t; | ||||
|  | ||||
| static void _add_identity(const char* identity, void* user_data) | ||||
| { | ||||
| 	identities_t* identities = user_data; | ||||
| 	char full_id[k_id_base64_len]; | ||||
| 	snprintf(full_id, sizeof(full_id), "@%s", identity); | ||||
| 	identities->ids = tf_resize_vec(identities->ids, sizeof(const char*) * (identities->count + 1)); | ||||
| 	identities->ids[identities->count++] = tf_strdup(full_id); | ||||
| } | ||||
|  | ||||
| const char** tf_ssb_db_get_all_visible_identities(tf_ssb_t* ssb, int depth) | ||||
| { | ||||
| 	identities_t identities = { 0 }; | ||||
| 	tf_ssb_db_identity_visit_all(ssb, _add_identity, &identities); | ||||
| 	const char** following = tf_ssb_db_following_deep(ssb, identities.ids, identities.count, depth); | ||||
| 	for (int i = 0; i < identities.count; i++) | ||||
| 	{ | ||||
| 		tf_free((void*)identities.ids[i]); | ||||
| 	} | ||||
| 	tf_free(identities.ids); | ||||
| 	return following; | ||||
| } | ||||
|  | ||||
| static void _test_private(sqlite3* db, const uint8_t* private_key) | ||||
| { | ||||
| 	sqlite3_stmt* statement = NULL; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user