Skip to content

Commit

Permalink
shadowsocksr-libev: Upgrade PCRE2 & drop libopenssl-legacy depends
Browse files Browse the repository at this point in the history
* shadowsocksr-libev: Upgrade PCRE to PCRE2
  • Loading branch information
zxlhhyccc authored Mar 17, 2024
1 parent ec53e2b commit 6e39a49
Showing 1 changed file with 16 additions and 6 deletions.
22 changes: 16 additions & 6 deletions shadowsocksr-libev/src/server/rule.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,27 @@

#include <libcork/ds.h>

#ifdef HAVE_PCRE_H
#include <pcre.h>
#elif HAVE_PCRE_PCRE_H
#include <pcre/pcre.h>
#endif
/*
* The PCRE2_CODE_UNIT_WIDTH macro must be defined before including pcre2.h.
* For a program that uses only one code unit width, setting it to 8, 16, or 32
* makes it possible to use generic function names such as pcre2_compile(). Note
* that just changing 8 to 16 (for example) is not sufficient to convert this
* program to process 16-bit characters. Even in a fully 16-bit environment, where
* string-handling functions such as strcmp() and printf() work with 16-bit
* characters, the code for handling the table of named substrings will still need
* to be modified.
*/
/* we only need to support ASCII chartable, thus set it to 8 */
#define PCRE2_CODE_UNIT_WIDTH 8

#include <pcre2.h>

typedef struct rule {
char *pattern;

/* Runtime fields */
pcre *pattern_re;
pcre2_code *pattern_re;
pcre2_match_data *pattern_re_match_data;

struct cork_dllist_item entries;
} rule_t;
Expand Down

0 comments on commit 6e39a49

Please sign in to comment.