diff options
author | sunpoet <sunpoet@FreeBSD.org> | 2015-03-22 06:00:14 +0800 |
---|---|---|
committer | sunpoet <sunpoet@FreeBSD.org> | 2015-03-22 06:00:14 +0800 |
commit | 53581c93aaef190649093a278a6fc4c5fb178db6 (patch) | |
tree | 2185495cdc5b992d9cbf71dae476ec5f1b47357b /net-mgmt | |
parent | 7748b4a6465ae59612ebddf787166da875ecf702 (diff) | |
download | freebsd-ports-gnome-53581c93aaef190649093a278a6fc4c5fb178db6.tar.gz freebsd-ports-gnome-53581c93aaef190649093a278a6fc4c5fb178db6.tar.zst freebsd-ports-gnome-53581c93aaef190649093a278a6fc4c5fb178db6.zip |
- Update to 0.8.2
Changes: https://github.com/Ettercap/ettercap/releases
Diffstat (limited to 'net-mgmt')
-rw-r--r-- | net-mgmt/ettercap/Makefile | 3 | ||||
-rw-r--r-- | net-mgmt/ettercap/distinfo | 4 | ||||
-rw-r--r-- | net-mgmt/ettercap/files/patch-include-ec_log.h | 21 | ||||
-rw-r--r-- | net-mgmt/ettercap/files/patch-src-dissectors-ec_ssh.c | 46 | ||||
-rw-r--r-- | net-mgmt/ettercap/files/patch-src-ec_log.c | 143 | ||||
-rw-r--r-- | net-mgmt/ettercap/files/patch-src-ec_utils.c | 28 | ||||
-rw-r--r-- | net-mgmt/ettercap/files/patch-src-os-ec_bsd.c | 13 |
7 files changed, 3 insertions, 255 deletions
diff --git a/net-mgmt/ettercap/Makefile b/net-mgmt/ettercap/Makefile index ce2cb4a018fc..2b0d2a9b112e 100644 --- a/net-mgmt/ettercap/Makefile +++ b/net-mgmt/ettercap/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= ettercap -PORTVERSION= 0.8.1 -PORTREVISION= 1 +PORTVERSION= 0.8.2 PORTEPOCH= 1 CATEGORIES= net-mgmt security diff --git a/net-mgmt/ettercap/distinfo b/net-mgmt/ettercap/distinfo index 6ddb5508e658..c2c50a46d0ea 100644 --- a/net-mgmt/ettercap/distinfo +++ b/net-mgmt/ettercap/distinfo @@ -1,2 +1,2 @@ -SHA256 (Ettercap-ettercap-0.8.1-v0.8.1_GH0.tar.gz) = d9e39e8f76eebc7fcfd8580dc909632328cd34f336a4486f463d08a967712db2 -SIZE (Ettercap-ettercap-0.8.1-v0.8.1_GH0.tar.gz) = 7903301 +SHA256 (Ettercap-ettercap-0.8.2-v0.8.2_GH0.tar.gz) = f38514f35bea58bfe6ef1902bfd4761de0379942a9aa3e175fc9348f4eef2c81 +SIZE (Ettercap-ettercap-0.8.2-v0.8.2_GH0.tar.gz) = 8082561 diff --git a/net-mgmt/ettercap/files/patch-include-ec_log.h b/net-mgmt/ettercap/files/patch-include-ec_log.h deleted file mode 100644 index df78ce1bfbdc..000000000000 --- a/net-mgmt/ettercap/files/patch-include-ec_log.h +++ /dev/null @@ -1,21 +0,0 @@ -Obtained from: https://github.com/Ettercap/ettercap/commit/42600aada0ba56b9c63dabcc2b0cb1417fa27863 - ---- include/ec_log.h.orig 2014-10-17 01:29:44.000000000 +0800 -+++ include/ec_log.h 2015-02-21 19:58:20.730805519 +0800 -@@ -8,6 +8,7 @@ - - #include <zlib.h> - #include <sys/time.h> -+#include <unistd.h> - - - struct log_fd { -@@ -126,6 +127,8 @@ - #define LOG_TRUE 1 - #define LOG_FALSE 0 - -+EC_API_EXTERN void reset_logfile_owners(uid_t old_uid, gid_t old_gid, uid_t new_uid, gid_t new_gid); -+ - EC_API_EXTERN int log_open(struct log_fd *fd, char *filename); - EC_API_EXTERN void log_close(struct log_fd *fd); - EC_API_EXTERN void log_stop(void); diff --git a/net-mgmt/ettercap/files/patch-src-dissectors-ec_ssh.c b/net-mgmt/ettercap/files/patch-src-dissectors-ec_ssh.c deleted file mode 100644 index cf9e2cfe891f..000000000000 --- a/net-mgmt/ettercap/files/patch-src-dissectors-ec_ssh.c +++ /dev/null @@ -1,46 +0,0 @@ -Obtained from: https://github.com/Ettercap/ettercap/commit/f71cd222712d6ecec6f086f3b8acca981e25f819 - ---- src/dissectors/ec_ssh.c.orig 2014-10-17 01:29:44.000000000 +0800 -+++ src/dissectors/ec_ssh.c 2015-03-03 03:43:40.843089707 +0800 -@@ -87,8 +87,8 @@ - - struct des3_state - { -- des_key_schedule k1, k2, k3; -- des_cblock iv1, iv2, iv3; -+ DES_key_schedule k1, k2, k3; -+ DES_cblock iv1, iv2, iv3; - }; - - struct blowfish_state -@@ -608,13 +608,13 @@ - if (state == NULL) /* oops, couldn't allocate memory */ - return NULL; - -- des_set_key((void *)sesskey, (state->k1)); -- des_set_key((void *)(sesskey + 8), (state->k2)); -+ DES_set_key((void *)sesskey, &(state->k1)); -+ DES_set_key((void *)(sesskey + 8), &(state->k2)); - - if (len <= 16) -- des_set_key((void *)sesskey, (state->k3)); -+ DES_set_key((void *)sesskey, &(state->k3)); - else -- des_set_key((void *)(sesskey + 16), (state->k3)); -+ DES_set_key((void *)(sesskey + 16), &(state->k3)); - - memset(state->iv1, 0, 8); - memset(state->iv2, 0, 8); -@@ -630,9 +630,9 @@ - dstate = (struct des3_state *)state; - memcpy(dstate->iv1, dstate->iv2, 8); - -- des_ncbc_encrypt(src, dst, len, (dstate->k3), &dstate->iv3, DES_DECRYPT); -- des_ncbc_encrypt(dst, dst, len, (dstate->k2), &dstate->iv2, DES_ENCRYPT); -- des_ncbc_encrypt(dst, dst, len, (dstate->k1), &dstate->iv1, DES_DECRYPT); -+ DES_ncbc_encrypt(src, dst, len, &(dstate->k3), &dstate->iv3, DES_DECRYPT); -+ DES_ncbc_encrypt(dst, dst, len, &(dstate->k2), &dstate->iv2, DES_ENCRYPT); -+ DES_ncbc_encrypt(dst, dst, len, &(dstate->k1), &dstate->iv1, DES_DECRYPT); - } - - static void swap_bytes(const u_char *src, u_char *dst, int n) diff --git a/net-mgmt/ettercap/files/patch-src-ec_log.c b/net-mgmt/ettercap/files/patch-src-ec_log.c deleted file mode 100644 index 83078a7beff5..000000000000 --- a/net-mgmt/ettercap/files/patch-src-ec_log.c +++ /dev/null @@ -1,143 +0,0 @@ -Obtained from: https://github.com/Ettercap/ettercap/commit/42600aada0ba56b9c63dabcc2b0cb1417fa27863 - ---- src/ec_log.c.orig 2014-10-17 01:29:44.000000000 +0800 -+++ src/ec_log.c 2015-02-21 19:58:20.733803628 +0800 -@@ -37,8 +37,11 @@ - - /* globals */ - --static struct log_fd fdp; --static struct log_fd fdi; -+/* zero is formally a valid value for an opened file descriptor -+ * so we need a custom initializer -+ */ -+static struct log_fd fdp = {0, NULL, -1}; -+static struct log_fd fdi = {0, NULL, -1}; - - /* protos */ - -@@ -79,7 +82,7 @@ - /* all the host type will be unknown, warn the user */ - if (GBL_OPTIONS->read) { - USER_MSG("*********************************************************\n"); -- USER_MSG("WARNING: while reading form file we cannot determine \n"); -+ USER_MSG("WARNING: while reading form file we cannot determine \n"); - USER_MSG("if an host is local or not because the ip address of \n"); - USER_MSG("the NIC may have been changed from the time of the dump. \n"); - USER_MSG("*********************************************************\n\n"); -@@ -168,23 +171,30 @@ - - /* - * open a file in the appropriate log_fd struct -+ * -+ * whether or not the log is compressed -+ * fd->fd becomes to always be a file descriptor of the opened file -+ * and fd->cfd is a non-NULL gzip stream descriptor when the log is to be compressed -+ * -+ * TODO: it is likely that we dont need 'type' field in 'log_fd' struct -+ * to mark a compressed log; non-NULL 'cfd' field becomes such a flag - */ - int log_open(struct log_fd *fd, char *filename) - { -- int zerr; - -- if (fd->type == LOG_COMPRESSED) { -- fd->cfd = gzopen(filename, "wb9"); -- if (fd->cfd == NULL) -- SEMIFATAL_ERROR("%s", gzerror(fd->cfd, &zerr)); -- } else { -- fd->fd = open(filename, O_CREAT | O_TRUNC | O_RDWR | O_BINARY, S_IRUSR | S_IWUSR); -- if (fd->fd == -1) -- SEMIFATAL_ERROR("Can't create %s: %s", filename, strerror(errno)); -- } -- -- /* set the permissions */ -- chmod(filename, 0600); -+ fd->fd = open(filename, O_CREAT|O_TRUNC|O_RDWR|O_BINARY, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH); -+ if (fd->fd == -1) -+ SEMIFATAL_ERROR("Can't create %s: %s", filename, strerror(errno)); -+ else -+ { -+ if (GBL_OPTIONS->compress) -+ { -+ int zerr; -+ fd->cfd = gzdopen(fd->fd, "wb9"); -+ if (fd->cfd == NULL) -+ SEMIFATAL_ERROR("%s", gzerror(fd->cfd, &zerr)); -+ }; -+ }; - - return E_SUCCESS; - } -@@ -195,14 +205,66 @@ - void log_close(struct log_fd *fd) - { - DEBUG_MSG("log_close: type: %d [%p][%d]", fd->type, fd->cfd, fd->fd); -- -- if (fd->type == LOG_COMPRESSED && fd->cfd) { -+ -+ if (fd->cfd) -+ { -+ /* gzclose() on the gzip stream descriptor (fd->cfd) -+ * will also close the file descriptor (fd->fd) -+ */ - gzclose(fd->cfd); - fd->cfd = NULL; -- } else if (fd->type == LOG_UNCOMPRESSED && fd->fd) { -+ fd->fd = -1; /* to prevent double closing the file descriptor */ -+ }; -+ -+ if (fd->fd >= 0) -+ { - close(fd->fd); -- fd->fd = 0; -- } -+ fd->fd = -1; -+ }; -+} -+ -+/* -+ * set the owner:group of the packet and info logfiles to new_uid:new_gid -+ * if the current owners are old_uid:old_gid respectively -+ * -+ * prefer this way to unconditionally setting the new ownership as far as -+ * the file may be intentionally located in the set-group-ID directory -+ */ -+void reset_logfile_owners(uid_t old_uid, gid_t old_gid, uid_t new_uid, gid_t new_gid) -+{ -+ struct stat f; -+ uid_t uid; -+ gid_t gid; -+ -+ /* packet logfile */ -+ if (fdp.fd >= 0) -+ { -+ DEBUG_MSG("reset_logfile_owners: packet log file"); -+ if (fstat(fdp.fd, &f) == 0) -+ { -+ uid = (f.st_uid == old_uid) ? new_uid : (uid_t)-1; -+ gid = (f.st_gid == old_gid) ? new_gid : (gid_t)-1; -+ if ( fchown(fdp.fd, uid, gid) != 0 ) -+ ERROR_MSG("fchown()"); -+ } -+ else -+ ERROR_MSG("fstat()"); -+ }; -+ -+ /* info logfile */ -+ if (fdi.fd >= 0) -+ { -+ DEBUG_MSG("reset_logfile_owners: info log file"); -+ if (fstat(fdi.fd, &f) == 0) -+ { -+ uid = (f.st_uid == old_uid) ? new_uid : (uid_t)-1; -+ gid = (f.st_gid == old_gid) ? new_gid : (gid_t)-1; -+ if ( fchown(fdi.fd, uid, gid) != 0 ) -+ ERROR_MSG("fchown()"); -+ } -+ else -+ ERROR_MSG("fstat()"); -+ }; - } - - /* diff --git a/net-mgmt/ettercap/files/patch-src-ec_utils.c b/net-mgmt/ettercap/files/patch-src-ec_utils.c deleted file mode 100644 index 9f11daed75dd..000000000000 --- a/net-mgmt/ettercap/files/patch-src-ec_utils.c +++ /dev/null @@ -1,28 +0,0 @@ -Obtained from: https://github.com/Ettercap/ettercap/commit/42600aada0ba56b9c63dabcc2b0cb1417fa27863 - ---- src/ec_utils.c.orig 2014-10-17 01:29:44.000000000 +0800 -+++ src/ec_utils.c 2015-02-21 19:58:20.735805931 +0800 -@@ -225,17 +225,19 @@ - else - gid = GBL_CONF->ec_gid; - -- DEBUG_MSG("drop_privs: setuid(%d) setgid(%d)", uid, gid); -+ reset_logfile_owners(geteuid(), getegid(), uid, gid); -+ -+ DEBUG_MSG("drop_privs: seteuid(%d) setegid(%d)", uid, gid); - - /* drop to a good uid/gid ;) */ -- if ( setgid(gid) < 0 ) -- ERROR_MSG("setgid()"); -+ if ( setegid(gid) < 0 ) -+ ERROR_MSG("setegid()"); - - if ( seteuid(uid) < 0 ) - ERROR_MSG("seteuid()"); - - DEBUG_MSG("privs: UID: %d %d GID: %d %d", (int)getuid(), (int)geteuid(), (int)getgid(), (int)getegid() ); -- USER_MSG("Privileges dropped to UID %d GID %d...\n\n", (int)getuid(), (int)getgid() ); -+ USER_MSG("Privileges dropped to EUID %d EGID %d...\n\n", (int)geteuid(), (int)getegid() ); - } - - /* base64 stuff */ diff --git a/net-mgmt/ettercap/files/patch-src-os-ec_bsd.c b/net-mgmt/ettercap/files/patch-src-os-ec_bsd.c deleted file mode 100644 index 6f551f2eacc8..000000000000 --- a/net-mgmt/ettercap/files/patch-src-os-ec_bsd.c +++ /dev/null @@ -1,13 +0,0 @@ -Obtained from: https://github.com/Ettercap/ettercap/commit/00f864d7dd2d82b640064db81aad065794b9b11b - ---- src/os/ec_bsd.c.orig 2014-10-17 01:29:44.000000000 +0800 -+++ src/os/ec_bsd.c 2015-02-21 19:58:20.738805431 +0800 -@@ -136,7 +136,7 @@ - - /* open the socket to work on */ - sock = socket(PF_INET, SOCK_DGRAM, 0); -- if (sock = -1) -+ if (sock == -1) - FATAL_ERROR("Unable to open socket on interface for MTU query\n"); - memset(&ifr, 0, sizeof(ifr)); - strncpy(ifr.ifr_name, iface, sizeof(ifr.ifr_name)); |