Support redis-cli -u rediss://... (#7900)
(cherry picked from commit efa784d5f24c60b41edb50d61afc2338864c9f39)
This commit is contained in:
parent
c6c0155725
commit
2a9f491e0d
@ -384,12 +384,20 @@ static sds percentDecode(const char *pe, size_t len) {
|
|||||||
static void parseRedisUri(const char *uri) {
|
static void parseRedisUri(const char *uri) {
|
||||||
|
|
||||||
const char *scheme = "redis://";
|
const char *scheme = "redis://";
|
||||||
|
const char *tlsscheme = "rediss://";
|
||||||
const char *curr = uri;
|
const char *curr = uri;
|
||||||
const char *end = uri + strlen(uri);
|
const char *end = uri + strlen(uri);
|
||||||
const char *userinfo, *username, *port, *host, *path;
|
const char *userinfo, *username, *port, *host, *path;
|
||||||
|
|
||||||
/* URI must start with a valid scheme. */
|
/* URI must start with a valid scheme. */
|
||||||
if (strncasecmp(scheme, curr, strlen(scheme))) {
|
if (!strncasecmp(tlsscheme, curr, strlen(tlsscheme))) {
|
||||||
|
#ifdef USE_OPENSSL
|
||||||
|
config.tls = 1;
|
||||||
|
#else
|
||||||
|
fprintf(stderr,"rediss:// is only supported when redis-cli is compiled with OpenSSL\n");
|
||||||
|
exit(1);
|
||||||
|
#endif
|
||||||
|
} else if (strncasecmp(scheme, curr, strlen(scheme))) {
|
||||||
fprintf(stderr,"Invalid URI scheme\n");
|
fprintf(stderr,"Invalid URI scheme\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user