diff options
Diffstat (limited to '')
-rw-r--r-- | plugins/ipcrypt/ipcrypt.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/plugins/ipcrypt/ipcrypt.c b/plugins/ipcrypt/ipcrypt.c index b1494e8..f8908a6 100644 --- a/plugins/ipcrypt/ipcrypt.c +++ b/plugins/ipcrypt/ipcrypt.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018-2022, OARC, Inc. + * Copyright (c) 2018-2023, OARC, Inc. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -273,8 +273,10 @@ int ipcrypt_filter(const char* descr, iaddr* from, iaddr* to, uint8_t proto, uns { for (;;) { if (only_clients && sport == dns_port) { - from = 0; - break; + if (sport != dport) { + from = 0; + break; + } } if (only_servers && sport != dns_port) { from = 0; @@ -309,8 +311,10 @@ int ipcrypt_filter(const char* descr, iaddr* from, iaddr* to, uint8_t proto, uns for (;;) { if (only_clients && dport == dns_port) { - to = 0; - break; + if (dport != sport) { + to = 0; + break; + } } if (only_servers && dport != dns_port) { to = 0; |