mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Security: Enable CIDR for allow/deny play/publish (#2914)
* protocol/utility: add srs_ipv4_to_num * protocol/utility: add srs_ipv4_within_mask * protocol/utility: add srs_get_cidr_mask and CIDR_VALUES static struct * protocol/utility: add srs_get_cidr_ipv4 * app/security: support cidr ip ranges in allow/deny rules * conf: update security example with cidr ranges * Security: Enable CIDR for allow/deny play/publish * Security: Enable CIDR for allow/deny play/publish * Security: Enable CIDR for allow/deny play/publish * fix compile error on centos6 Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
This commit is contained in:
parent
451b01011c
commit
67ccd589c1
6 changed files with 219 additions and 1 deletions
|
@ -112,5 +112,17 @@ std::string srs_join_vector_string(std::vector<T>& vs, std::string separator)
|
|||
// Whether domain is an IPv4 address.
|
||||
extern bool srs_is_ipv4(std::string domain);
|
||||
|
||||
// Convert an IPv4 from string to uint32_t.
|
||||
extern uint32_t srs_ipv4_to_num(std::string ip);
|
||||
|
||||
// Whether the IPv4 is in an IP mask.
|
||||
extern bool srs_ipv4_within_mask(std::string ip, std::string network, std::string mask);
|
||||
|
||||
// Get the CIDR (Classless Inter-Domain Routing) mask for a network address.
|
||||
extern std::string srs_get_cidr_mask(std::string network_address);
|
||||
|
||||
// Get the CIDR (Classless Inter-Domain Routing) IPv4 for a network address.
|
||||
extern std::string srs_get_cidr_ipv4(std::string network_address);
|
||||
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue