summaryrefslogtreecommitdiff
path: root/net-wireless/airtraf
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
commitbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch)
tree0d7a74b4463ee387f9cf9368ceb1b757f694f72a /net-wireless/airtraf
parentf716a9fe6455d39eef01e718aae68dae61c19704 (diff)
downloadbaldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'net-wireless/airtraf')
-rw-r--r--net-wireless/airtraf/Manifest1
-rw-r--r--net-wireless/airtraf/airtraf-1.1-r5.ebuild58
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-c23.patch24
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-fno-common.patch21
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-fprintf-format.patch14
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-ncurses-opaque.patch94
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-off-by-one.patch29
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-sniffd.patch59
-rw-r--r--net-wireless/airtraf/files/airtraf-1.1-wformat-security.patch201
-rw-r--r--net-wireless/airtraf/metadata.xml15
10 files changed, 516 insertions, 0 deletions
diff --git a/net-wireless/airtraf/Manifest b/net-wireless/airtraf/Manifest
new file mode 100644
index 000000000000..e74e5ecc25b0
--- /dev/null
+++ b/net-wireless/airtraf/Manifest
@@ -0,0 +1 @@
+DIST airtraf-1.1.tar.gz 136241 BLAKE2B 682516c6441efac8699fb15d40b99b50882d1c2d9e3acd344a979df080ca4f5532b0aa3247f37360f78ad2902018f907d6fe3e912b1d7b0df383c3bfe16f61a9 SHA512 7f341abb25e15dbdf510805230ee2f186a7a66d5c1e486bfdb978d3d8534d8b8c2cc1b5e0e323357c65af1eedbcb1da3e3e5f3ac8299db5f203f54b4a868f90b
diff --git a/net-wireless/airtraf/airtraf-1.1-r5.ebuild b/net-wireless/airtraf/airtraf-1.1-r5.ebuild
new file mode 100644
index 000000000000..0571660d503e
--- /dev/null
+++ b/net-wireless/airtraf/airtraf-1.1-r5.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="AirTraf 802.11b Wireless traffic sniffer"
+HOMEPAGE="http://www.elixar.com/"
+SRC_URI="http://www.elixar.com/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+RDEPEND="
+ net-libs/libpcap
+ sys-libs/ncurses:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-sniffd.patch
+ "${FILESDIR}"/${P}-off-by-one.patch
+ "${FILESDIR}"/${P}-fprintf-format.patch
+ "${FILESDIR}"/${P}-fno-common.patch
+ "${FILESDIR}"/${P}-c23.patch
+ "${FILESDIR}"/${P}-ncurses-opaque.patch
+ "${FILESDIR}"/${P}-wformat-security.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e '/^LIBS/s|=.*|= $(shell $(PKG_CONFIG) --libs panel)|' \
+ src/libncurses/Makefile || die
+ sed -i \
+ -e 's|-lpanel -lncurses|$(shell $(PKG_CONFIG) --libs ncurses panel)|' \
+ src/sniffd/Makefile || die
+ tc-export PKG_CONFIG
+}
+
+src_compile() {
+ # parallel make (bug #297331)
+ emake -C src -j1 \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin src/airtraf
+ dodoc Authors COMPATIBILITY docs/airtraf_doc.html
+}
diff --git a/net-wireless/airtraf/files/airtraf-1.1-c23.patch b/net-wireless/airtraf/files/airtraf-1.1-c23.patch
new file mode 100644
index 000000000000..5c797aa61780
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-c23.patch
@@ -0,0 +1,24 @@
+--- a/src/libncurses/deskman.c
++++ b/src/libncurses/deskman.c
+@@ -123,7 +123,7 @@ void colorwin(WINDOW * win)
+ free(blankpad);
+ }
+
+-void coloreol()
++void coloreol(WINDOW * win)
+ {
+ char *blankpad;
+ int y, x;
+--- a/src/libncurses/deskman.h
++++ b/src/libncurses/deskman.h
+@@ -50,6 +50,6 @@ void show_paused_win(WINDOW ** win, PANEL ** panel, char * message, char *messag
+ void infobox(char *text, char *prompt);
+ void standardcolors(int color);
+ void refresh_screen(void);
+-void show_sort_statwin();
++void show_sort_statwin(WINDOW **statwin, PANEL **panel);
+
+ #endif
+--
+2.47.0
+
diff --git a/net-wireless/airtraf/files/airtraf-1.1-fno-common.patch b/net-wireless/airtraf/files/airtraf-1.1-fno-common.patch
new file mode 100644
index 000000000000..9945f170d53d
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-fno-common.patch
@@ -0,0 +1,21 @@
+--- a/src/sniffd/capture_engine.c
++++ b/src/sniffd/capture_engine.c
+@@ -52,7 +52,6 @@
+ FILE * capture_stream;
+ FILE * error_stream;
+
+-char atime[TIME_TARGET_MAX];
+
+
+ ////////////////////////////////////////////////////////////////////////
+--- a/src/libcommon/logger.h
++++ b/src/libcommon/logger.h
+@@ -33,6 +33,8 @@
+ #ifndef __logger_h__
+ #define __logger_h__
+
++extern char atime[TIME_TARGET_MAX];
++
+ int init_log(int, char*);
+ int write_log(int, char*);
+ void flush_log(int);
diff --git a/net-wireless/airtraf/files/airtraf-1.1-fprintf-format.patch b/net-wireless/airtraf/files/airtraf-1.1-fprintf-format.patch
new file mode 100644
index 000000000000..ac5d174c0d6f
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-fprintf-format.patch
@@ -0,0 +1,14 @@
+--- a/src/libcommon/logger.c
++++ b/src/libcommon/logger.c
+@@ -92,9 +92,9 @@
+
+ switch (type)
+ {
+- case CONNECT_LOG: status = fprintf(connect_log, text);
++ case CONNECT_LOG: status = fprintf(connect_log, "%s\n", text);
+ break;
+- case ERROR_LOG: status = fprintf(error_log, text);
++ case ERROR_LOG: status = fprintf(error_log, "%s\n", text);
+ break;
+ default: // do nothing?
+ break;
diff --git a/net-wireless/airtraf/files/airtraf-1.1-ncurses-opaque.patch b/net-wireless/airtraf/files/airtraf-1.1-ncurses-opaque.patch
new file mode 100644
index 000000000000..540b7b2772eb
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-ncurses-opaque.patch
@@ -0,0 +1,94 @@
+https://bugs.gentoo.org/932138
+--- a/src/libncurses/deskman.c
++++ b/src/libncurses/deskman.c
+@@ -110,12 +110,12 @@ void colorwin(WINDOW * win)
+
+ strcpy(blankpad, "");
+
+- for (ctr = 0; ctr <= win->_maxx; ctr++) {
++ for (ctr = 0; ctr <= getmaxx(win); ctr++) {
+ strcat(blankpad, " ");
+ }
+
+ scrollok(win, 0);
+- for (ctr = 0; ctr <= win->_maxy; ctr++) {
++ for (ctr = 0; ctr <= getmaxy(win); ctr++) {
+ wmove(win, ctr, 0);
+ wprintw(win, "%s", blankpad);
+ }
+--- a/src/sniffd/gui_channel_scan.c
++++ b/src/sniffd/gui_channel_scan.c
+@@ -339,7 +339,7 @@ void make_status_window(WINDOW ** statuswin, PANEL ** statuspanel)
+ void fill_line_blank(WINDOW * win, int line)
+ {
+ int i;
+- for (i = 0; i < win->_maxx; i++)
++ for (i = 0; i < getmaxx(win); i++)
+ mvwprintw(win, line, i, " ");
+ }
+
+--- a/src/sniffd/gui_tcp_analysis_scan.c
++++ b/src/sniffd/gui_tcp_analysis_scan.c
+@@ -463,7 +463,7 @@ void print_tcp_nodelist_row(WINDOW *win, int row, bss_node_t *node, int id, int
+ void print_tcp_nodelist_results(WINDOW * win, int * selected_node, int offset)
+ {
+ int i;
+- int max_view = win->_maxy - 6;
++ int max_view = getmaxy(win) - 6;
+ int last_item = 0;
+ int selected = 0;
+
+@@ -476,7 +476,7 @@ void print_tcp_nodelist_results(WINDOW * win, int * selected_node, int offset)
+ wattrset(win, STDATTR);
+
+ if (ap->num < 2){
+- mvwprintw(win, 4, (win->_maxx - 26) /2, "No Detected Wireless Nodes!");
++ mvwprintw(win, 4, (getmaxx(win) - 26) /2, "No Detected Wireless Nodes!");
+ return;
+ }
+
+@@ -485,15 +485,15 @@ void print_tcp_nodelist_results(WINDOW * win, int * selected_node, int offset)
+ if (*selected_node == 0){
+ *selected_node = 1;
+ }
+- mvwprintw(win, 4, (win->_maxx - 26) /2, " ");
++ mvwprintw(win, 4, (getmaxx(win) - 26) /2, " ");
+
+ if ((offset + max_view) < ap->num){
+ last_item = offset + max_view;
+- mvwprintw(win, win->_maxy - 1, 4, ">> More >>");
++ mvwprintw(win, getmaxy(win) - 1, 4, ">> More >>");
+ }
+ else{
+ last_item = ap->num;
+- mvwprintw(win, win->_maxy - 1, 4, "-- End --");
++ mvwprintw(win, getmaxy(win) - 1, 4, "-- End --");
+ }
+ for (i = offset; i < last_item; i++){
+ if (node == NULL) break;
+@@ -542,7 +542,7 @@ void scrollbreakdownwin(int direction, int select_node, int * offset)
+
+ void scrollnodelistwin(WINDOW *win, int direction, int * select_node, int * list_pos)
+ {
+- int max_view = win->_maxy - 6;
++ int max_view = getmaxy(win) - 6;
+
+ bss_t * ap = get_detailed_snapshot()->bss_list_top;
+
+@@ -581,11 +581,11 @@ void reset_active_win(WINDOW *win, int toggle)
+ {
+ if (toggle){
+ wattrset(win, ACTIVEATTR);
+- mvwprintw(win, win->_maxy, win->_maxx - 10, " ACTIVE ");
++ mvwprintw(win, getmaxy(win), getmaxx(win) - 10, " ACTIVE ");
+ }
+ else{
+ wattrset(win, BOXATTR);
+- wmove(win, win->_maxy, win->_maxx - 10);
++ wmove(win, getmaxy(win), getmaxx(win) - 10);
+ whline(win, ACS_HLINE, 8);
+ }
+ }
+--
+2.47.0
+
diff --git a/net-wireless/airtraf/files/airtraf-1.1-off-by-one.patch b/net-wireless/airtraf/files/airtraf-1.1-off-by-one.patch
new file mode 100644
index 000000000000..571532b603ec
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-off-by-one.patch
@@ -0,0 +1,29 @@
+--- a/src/sniffd/autoconfig.c
++++ b/src/sniffd/autoconfig.c
+@@ -68,7 +68,7 @@
+ struct ifreq ifr;
+
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+- ifr.ifr_name[IFNAMSIZ] = '\0';
++ ifr.ifr_name[IFNAMSIZ -1] = '\0';
+ if (ioctl(skfd, SIOCGIFFLAGS, &ifr) < 0){
+ return (-1);
+ }
+@@ -89,7 +89,7 @@
+ struct ifreq ifr;
+
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+- ifr.ifr_name[IFNAMSIZ] = '\0';
++ ifr.ifr_name[IFNAMSIZ -1] = '\0';
+ if (ioctl(skfd, SIOCGIFFLAGS, &ifr) < 0){
+ return (-1);
+ }
+@@ -129,7 +129,7 @@
+ {
+ /* Set device name */
+ strncpy(pwrq->ifr_name, ifname, IFNAMSIZ);
+- pwrq->ifr_name[IFNAMSIZ] = '\0';
++ pwrq->ifr_name[IFNAMSIZ -1] = '\0';
+
+ /* Do the request */
+ return(ioctl(skfd, request, pwrq));
diff --git a/net-wireless/airtraf/files/airtraf-1.1-sniffd.patch b/net-wireless/airtraf/files/airtraf-1.1-sniffd.patch
new file mode 100644
index 000000000000..e88ef52267c1
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-sniffd.patch
@@ -0,0 +1,59 @@
+--- a/src/sniffd/autoconfig.c
++++ b/src/sniffd/autoconfig.c
+@@ -360,7 +360,7 @@
+ int check_drv_compat(char * drvname, int * id)
+ {
+ int i;
+- for (i=0; (int) compat_drivers[i] != -1; i++){
++ for (i=0; (long) compat_drivers[i] != -1; i++){
+ if (!strncmp(compat_drivers[i], drvname, DRVNAMSIZ +1)){
+ *id = i;
+ return (1); // just true...
+@@ -525,6 +525,7 @@
+ }
+ /* Close the socket. */
+ close(skfd);
++ return 0;
+ }
+
+ /**
+@@ -772,7 +773,7 @@
+ fclose(fh);
+ break;
+ case DRV_PRISM2:
+-
++ break;
+
+ }
+ /* update flag take off PROMISC */
+--- a/src/sniffd/gui_channel_scan.c
++++ b/src/sniffd/gui_channel_scan.c
+@@ -384,7 +384,7 @@
+ if (!beep()) flash();
+ wattrset(statuswin, STDATTR);
+ snprintf(message,100,"Detected new network '%s' (%s) on Channel %02d",
+- ((strlen(ap->ssid)==1)&&(!strncmp(" ",ap->ssid,1))) ? "<cloaked>" : ap->ssid,
++ ((strlen(ap->ssid)==1)&&(!strncmp(" ",(char *)ap->ssid,1))) ? "<cloaked>" : (char *)ap->ssid,
+ hexdump((__u8*)&ap->bssid,6), ap->channel);
+ print_status_msg(statuswin, location, message);
+ ap->status = AP_STATUS_ACTIVE;
+--- a/src/sniffd/server.c
++++ b/src/sniffd/server.c
+@@ -57,7 +57,7 @@
+
+ int process_command(int, char *);
+ int issue_get_cmd(int, char *);
+-int send_bss_info(int);
++ssize_t send_bss_info(int);
+ int send_ids_info(int);
+
+ /*=============================================================*/
+@@ -143,7 +143,7 @@
+ if (DEBUG) fprintf(stderr,"Error transmitting data\n");
+ }
+ } while (write_len == 0);
+- if (DEBUG) fprintf(stderr,"Data: %d bytes sent\n",length);
++ if (DEBUG) fprintf(stderr,"Data: %ld bytes sent\n",length);
+ }
+
+ /**
diff --git a/net-wireless/airtraf/files/airtraf-1.1-wformat-security.patch b/net-wireless/airtraf/files/airtraf-1.1-wformat-security.patch
new file mode 100644
index 000000000000..edd531258e66
--- /dev/null
+++ b/net-wireless/airtraf/files/airtraf-1.1-wformat-security.patch
@@ -0,0 +1,201 @@
+--- a/src/libncurses/deskman.c
++++ b/src/libncurses/deskman.c
+@@ -136,7 +136,7 @@ void coloreol(WINDOW * win)
+ for (i = x; i <= COLS - 1; i++)
+ strcat(blankpad, " ");
+
+- printw(blankpad);
++ printw("%s", blankpad);
+ free(blankpad);
+ }
+
+@@ -284,8 +284,8 @@ void indicate(char *message)
+ char sp_buf[10];
+ attrset(STATUSBARATTR);
+ sprintf(sp_buf, "%%%dc", COLS);
+- mvprintw(LINES - 1, 0, sp_buf, ' ');
+- mvprintw(LINES - 1, 1, message);
++ mvprintw(LINES - 1, 0, "%s%d", sp_buf, ' ');
++ mvprintw(LINES - 1, 1, "%s", message);
+ refresh();
+ }
+
+@@ -336,9 +336,9 @@ void infobox(char *text, char *prompt)
+ colorwin(win);
+ box(win, ACS_VLINE, ACS_HLINE);
+ wattrset(win, STDATTR);
+- mvwprintw(win, 1, 2, text);
++ mvwprintw(win, 1, 2, "%s", text);
+ wattrset(win, HIGHATTR);
+- mvwprintw(win, 2, 2, prompt);
++ mvwprintw(win, 2, 2, "%s", prompt);
+ update_panels();
+ doupdate();
+ wgetch(win);
+--- a/src/sniffd/gui_main.c
++++ b/src/sniffd/gui_main.c
+@@ -248,8 +248,8 @@ void print_selected_ap_results(WINDOW *win, PANEL *panel, struct access_point *a
+ mvwprintw(win, 3, 10, " ");
+ mvwprintw(win, 4, 10, " ");
+ mvwprintw(win, 6, 13, " ");
+- mvwprintw(win, 3, 10, ap->ssid);
+- mvwprintw(win, 4, 10, hexdump((__u8*)&ap->bssid,6));
++ mvwprintw(win, 3, 10, "%s", ap->ssid);
++ mvwprintw(win, 4, 10, "%s", hexdump((__u8*)&ap->bssid,6));
+ mvwprintw(win, 5, 10, "%s", ap->wep_status ? "encrypted " : "opensystem");
+ mvwprintw(win, 6, 13, "%02d", ap->channel);
+ }
+@@ -305,7 +305,7 @@ void print_system_results(WINDOW *win, PANEL *panel, struct SETTINGS *mySettings
+ else if (mySettings->card_type == WLANNG)
+ mvwprintw(win, 3, 19, "Wlan-ng ");
+
+- mvwprintw(win, 4, 19, mySettings->interface);
++ mvwprintw(win, 4, 19, "%s", mySettings->interface);
+
+ if (mySettings->capture_mode != CAPTURE_MODE_PLAYBACK)
+ mvwprintw(win, 5, 19, "Real-Time ");
+@@ -327,7 +327,7 @@ void print_system_results(WINDOW *win, PANEL *panel, struct SETTINGS *mySettings
+ else
+ mvwprintw(win, 8, 19, "OFF");
+
+- mvwprintw(win, 10, 12, uptime);
++ mvwprintw(win, 10, 12, "%s", uptime);
+
+ update_panels();
+ doupdate();
+@@ -373,7 +373,7 @@ void showcapturesetting(WINDOW *win, struct SETTINGS *mySettings)
+ {
+ wattrset(win, HIGHATTR);
+ mvwprintw(win, 1, 20, " ");
+- mvwprintw(win, 1, 20, mySettings->capture_file);
++ mvwprintw(win, 1, 20, "%s", mySettings->capture_file);
+ mvwprintw(win, 2, 20, "%s", mySettings->capture_overwrite ? "YES" : " NO");
+ mvwprintw(win, 3, 20, "%-5.1f", mySettings->capture_interval);
+ }
+--- a/src/sniffd/gui_channel_scan.c
++++ b/src/sniffd/gui_channel_scan.c
+@@ -286,8 +286,8 @@ void print_breakdown_results(WINDOW * win, int offset)
+ if (!strncmp(ap->ssid," ",32))
+ mvwprintw(win, position+3, 11, "<cloaked>");
+ else
+- mvwprintw(win, position+3, 11, ap->ssid);
+- mvwprintw(win, position+3, 39, hexdump((__u8*)&ap->bssid,6));
++ mvwprintw(win, position+3, 11, "%s", ap->ssid);
++ mvwprintw(win, position+3, 39, "%s", hexdump((__u8*)&ap->bssid,6));
+ mvwprintw(win, position+3, 53, "%s", ap->wep_status ? "crypt" : "open ");
+ mvwprintw(win, position+3, 59, "%5d", ap->mgmt_count);
+ mvwprintw(win, position+3, 65, "%4d", ap->ctrl_count);
+@@ -351,12 +351,12 @@ void print_status_msg(WINDOW * statuswin, int *location, char * msg)
+ scrollstatuswin(statuswin, SCROLLUP);
+ wmove(statuswin, 12, 0);
+ fill_line_blank(statuswin, 12);
+- mvwprintw(statuswin, 12, 2, msg);
++ mvwprintw(statuswin, 12, 2, "%s", msg);
+ }
+ else{
+ wmove(statuswin, *location, 0);
+ fill_line_blank(statuswin, *location);
+- mvwprintw(statuswin, *location, 2, msg);
++ mvwprintw(statuswin, *location, 2, "%s", msg);
+ }
+ *location = *location + 1;
+ update_panels();
+--- a/src/sniffd/gui_detailed_scan.c
++++ b/src/sniffd/gui_detailed_scan.c
+@@ -131,8 +131,8 @@ void printdetails(WINDOW * win)
+
+ wattrset(win, HIGHATTR);
+ if (info != NULL){
+- mvwprintw(win, 2, 10, hexdump((__u8*)&info->bssid,6));
+- mvwprintw(win, 2, 33, info->ssid);
++ mvwprintw(win, 2, 10, "%s", hexdump((__u8*)&info->bssid,6));
++ mvwprintw(win, 2, 33, "%s", info->ssid);
+ mvwprintw(win, 2, 61, "%s", info->wep_status ? "encrypted " : "opensystem");
+ mvwprintw(win, 2, 85, "%d", info->channel);
+
+--- a/src/sniffd/gui_gen_protocol_scan.c
++++ b/src/sniffd/gui_gen_protocol_scan.c
+@@ -150,8 +150,8 @@ void print_proto_activity_overview_results(WINDOW * win)
+
+ wattrset(win, HIGHATTR);
+ /** access point info **/
+- mvwprintw(win, 4, 10, ap->ssid);
+- mvwprintw(win, 5, 10, hexdump((__u8*)&ap->bssid,6));
++ mvwprintw(win, 4, 10, "%s", ap->ssid);
++ mvwprintw(win, 5, 10, "%s", hexdump((__u8*)&ap->bssid,6));
+ mvwprintw(win, 6, 10, "%s", ap->wep_status ? "encrypted " : "opensystem");
+ mvwprintw(win, 7, 13, "%02d", ap->channel);
+
+--- a/src/sniffd/gui_tcp_analysis_scan.c
++++ b/src/sniffd/gui_tcp_analysis_scan.c
+@@ -164,8 +164,8 @@ void print_tcp_activity_overview_results(WINDOW * win, int selected, int view)
+
+ wattrset(win, HIGHATTR);
+ /** access point info **/
+- mvwprintw(win, 4, 10, ap->ssid);
+- mvwprintw(win, 5, 10, hexdump((__u8*)&ap->bssid,6));
++ mvwprintw(win, 4, 10, "%s", ap->ssid);
++ mvwprintw(win, 5, 10, "%s", hexdump((__u8*)&ap->bssid,6));
+ mvwprintw(win, 6, 10, "%s", ap->wep_status ? "encrypted " : "opensystem");
+ mvwprintw(win, 7, 13, "%02d", ap->channel);
+ mvwprintw(win, 8, 18, "%3d", ap->num-1);
+--- a/src/sniffd/gui_tcp_analysis_scan.c
++++ b/src/sniffd/gui_tcp_analysis_scan.c
+@@ -437,7 +437,7 @@ void print_tcp_nodelist_row(WINDOW *win, int row, bss_node_t *node, int id, int
+ mvwprintw(win, row, 2, ">");
+ wattrset(win, STDATTR);
+ mvwprintw(win, row, 4, "%02d", id);
+- mvwprintw(win, row, 10, hexdump((__u8*)&node->mac_addr,6));
++ mvwprintw(win, row, 10, "%s", hexdump((__u8*)&node->mac_addr,6));
+ mvwprintw(win, row, 30, " ");
+ mvwprintw(win, row, 30, "%s", inet_ntoa(node->ip_addr));
+ mvwprintw(win, row, 48, "%6d", node->tcp_connections);
+@@ -447,7 +447,7 @@ void print_tcp_nodelist_row(WINDOW *win, int row, bss_node_t *node, int id, int
+ wattrset(win, HIGHATTR);
+ mvwprintw(win, row, 2, " ");
+ mvwprintw(win, row, 4, "%02d", id);
+- mvwprintw(win, row, 10, hexdump((__u8*)&node->mac_addr,6));
++ mvwprintw(win, row, 10, "%s", hexdump((__u8*)&node->mac_addr,6));
+ mvwprintw(win, row, 30, " ");
+ mvwprintw(win, row, 30, "%s", inet_ntoa(node->ip_addr));
+ mvwprintw(win, row, 48, "%6d", node->tcp_connections);
+--- a/src/sniffd/mon_ids.c
++++ b/src/sniffd/mon_ids.c
+@@ -76,9 +76,9 @@ void print_ids_statrow(WINDOW * win, node_stat_t * node, int seq_num)
+ int diagnosis = 0;
+
+ mvwprintw(win, seq_num, 2, "%2d: ", seq_num);
+- mvwprintw(win, seq_num, 6, hexdump((__u8*)&node->node_mac, 6));
++ mvwprintw(win, seq_num, 6, "%s", hexdump((__u8*)&node->node_mac, 6));
+ mvwprintw(win, seq_num, 18, " -> ");
+- mvwprintw(win, seq_num, 22, hexdump((__u8*)&node->dest_mac, 6));
++ mvwprintw(win, seq_num, 22, "%s", hexdump((__u8*)&node->dest_mac, 6));
+ mvwprintw(win, seq_num, 25 * COLS / 80, "%6d", node->probe_request);
+ mvwprintw(win, seq_num, 30 * COLS / 80, "%6d", node->assoc_request);
+ mvwprintw(win, seq_num, 35 * COLS / 80, "%6d", node->reassoc_request);
+@@ -93,10 +93,10 @@ void print_ids_statrow(WINDOW * win, node_stat_t * node, int seq_num)
+ node->deauth_status);
+ diagnosis = node->assoc_status + node->reassoc_status + node->auth_status;
+ if (diagnosis == 0){
+- mvwprintw(win, seq_num, 70 * COLS/ 80, " Normal ");
++ mvwprintw(win, seq_num, 70 * COLS/ 80, "%s", " Normal ");
+ }
+ else{
+- mvwprintw(win, seq_num, 70 * COLS/ 80, "Suspicious");
++ mvwprintw(win, seq_num, 70 * COLS/ 80, "%s", "Suspicious");
+ }
+ }
+
+@@ -115,10 +115,10 @@ void print_ids_details(WINDOW * win, ids_t *info, int page_num)
+ end_loc = MAX_STAT_ROW - 1;
+ }
+ if (end_loc < info->node_count){
+- mvwprintw(win, LINES * 0.6, 2, " >> More >> ");
++ mvwprintw(win, LINES * 0.6, 2, "%s", " >> More >> ");
+ }
+ else{
+- mvwprintw(win, LINES * 0.6, 2, " << END! >> ");
++ mvwprintw(win, LINES * 0.6, 2, "%s", " << END! >> ");
+ }
+ wattrset(win, HIGHATTR);
+ for (curr_loc = start_loc; curr_loc < end_loc; curr_loc++){
diff --git a/net-wireless/airtraf/metadata.xml b/net-wireless/airtraf/metadata.xml
new file mode 100644
index 000000000000..f6a508b85ffa
--- /dev/null
+++ b/net-wireless/airtraf/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>netmon@gentoo.org</email>
+ <name>Gentoo network monitoring and analysis project</name>
+</maintainer>
+<longdescription>
+AirTraf 1.0 is a wireless sniffer that can detect and determine exactly what is
+being transmitted over 802.11 wireless networks. This open-source program
+tracks and identifies legitimate and rogue access points, keeps performance
+statistics on a by-user and by-protocol basis, measures the signal strength of
+network components, and more. Do you want to capture the sky?
+</longdescription>
+</pkgmetadata>