mirror of
				https://github.com/osmarks/ngircd.git
				synced 2025-10-26 03:27:38 +00:00 
			
		
		
		
	New function Lists_CheckReason() to get reason of list entries
This commit is contained in:
		| @@ -321,6 +321,19 @@ Lists_MakeMask(const char *Pattern) | |||||||
|  */ |  */ | ||||||
| bool | bool | ||||||
| Lists_Check(struct list_head *h, CLIENT *Client) | Lists_Check(struct list_head *h, CLIENT *Client) | ||||||
|  | { | ||||||
|  | 	return Lists_CheckReason(h, Client) != NULL; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * Check if a client is listed in a list and return the "reason". | ||||||
|  |  * | ||||||
|  |  * @param h List head. | ||||||
|  |  * @param Client Client to check. | ||||||
|  |  * @return true if client is listed, false if not. | ||||||
|  |  */ | ||||||
|  | char * | ||||||
|  | Lists_CheckReason(struct list_head *h, CLIENT *Client) | ||||||
| { | { | ||||||
| 	struct list_elem *e, *last, *next; | 	struct list_elem *e, *last, *next; | ||||||
|  |  | ||||||
| @@ -338,13 +351,13 @@ Lists_Check( struct list_head *h, CLIENT *Client) | |||||||
| 					 e->mask); | 					 e->mask); | ||||||
| 				Lists_Unlink(h, last, e); | 				Lists_Unlink(h, last, e); | ||||||
| 			} | 			} | ||||||
| 			return true; | 			return e->reason ? e->reason : ""; | ||||||
| 		} | 		} | ||||||
| 		last = e; | 		last = e; | ||||||
| 		e = next; | 		e = next; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	return false; | 	return NULL; | ||||||
| } | } | ||||||
|  |  | ||||||
| /** | /** | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ GLOBAL struct list_elem *Lists_GetFirst PARAMS((const struct list_head *)); | |||||||
| GLOBAL struct list_elem *Lists_GetNext PARAMS((const struct list_elem *)); | GLOBAL struct list_elem *Lists_GetNext PARAMS((const struct list_elem *)); | ||||||
|  |  | ||||||
| GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client)); | GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client)); | ||||||
|  | GLOBAL char *Lists_CheckReason PARAMS((struct list_head *head, CLIENT *client)); | ||||||
| GLOBAL struct list_elem *Lists_CheckDupeMask PARAMS((const struct list_head *head, | GLOBAL struct list_elem *Lists_CheckDupeMask PARAMS((const struct list_head *head, | ||||||
| 					const char *mask)); | 					const char *mask)); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Alexander Barton
					Alexander Barton