亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gps_db.c

?? Linux下無線網卡掃描工具源代碼
?? C
字號:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#ifdef __OLD_DB__#include <db1/db.h>#else#include <db_185.h>#endif#include "nmea/gpgll.h"#include "gps_db.h"#include "skan.h"#include "skan_config.h"extern gtkskan_config_t skan_conf;static DB * gps_db = NULL;/* i'm not checking the return values here because i don't remember what    they are and don't have the man page handy */void gps_db_open(void){  GString *path = g_string_new(g_get_home_dir());  BTREEINFO infozzz = { R_DUP, 0, 0, 0, 0, 0, 0, 0 };  g_string_append(path, "/.gtkskan-gps-db");  if(gps_db == NULL) {    gps_db = dbopen(path->str, O_RDWR|O_CREAT, 0664, DB_BTREE, &infozzz);    atexit(gps_db_close);    g_string_free(path, TRUE);  }}void gps_db_sync(void){  gps_db_open();  (gps_db)->sync(gps_db, 0);}void gps_db_close(void){  if(gps_db != NULL) {    (gps_db)->close(gps_db);  }}int gps_db_save_data(gps_gpgll *gps, char *ap_mac, int strength){  DBT key   = { 0, 0 };  DBT value = { 0, 0 };  char keybuf[strlen(ap_mac) + 4];  gps_db_open();  memset(keybuf, 0, sizeof(keybuf));  sprintf(keybuf, "%s%d", ap_mac, strength);  key.data   = keybuf;  key.size   = strlen(keybuf) + 1;  value.data = gps;  value.size = sizeof(gps_gpgll);  (gps_db)->put(gps_db, &key, &value, 0);  return 1;}gps_record * gps_db_lookup_strongest(const char *ap_mac){  DBT key    = { 0, 0 };  DBT value  = { 0, 0 };  char keybuf[strlen(ap_mac) + 1];  if(ap_mac == NULL)    return 0;  key.data = keybuf;  key.size = strlen(ap_mac) + 1;    strcpy(keybuf, ap_mac);  keybuf[strlen(ap_mac)] += 1;  gps_db_open();  if((gps_db)->seq(gps_db, &key, &value, R_CURSOR) < 0) {    if((gps_db)->seq(gps_db, &key, &value, R_LAST) < 0) {      return NULL;    }  }  (gps_db)->seq(gps_db, &key, &value, R_PREV);    if(strncmp((char*)key.data, ap_mac, strlen(ap_mac)) != 0)    return NULL;    if(value.size == sizeof(gps_gpgll)) {    gps_record * outbuf = (gps_record*)calloc(1, sizeof(gps_record));    memcpy(&outbuf->value, value.data, value.size);    memcpy(outbuf->key.ap_mac, keybuf, 18);    outbuf->key.link_quality = atoi(keybuf+18);    return outbuf;  }    return NULL;}gps_record * gps_db_lookup(const char *ap_mac, int n){  DBT key    = { 0, 0 };  DBT value  = { 0, 0 };  char keybuf[strlen(ap_mac) + 1];  int i = 0;  if(ap_mac == NULL)    return 0;  key.data = keybuf;  key.size = strlen(ap_mac) + 1;    strcpy(keybuf, ap_mac);  gps_db_open();  if((gps_db)->seq(gps_db, &key, &value, R_CURSOR) < 0 ||     strncmp((char*)key.data, ap_mac, strlen(ap_mac)) != 0) {    return NULL;  }  if(n == 0)    goto done; /* ouch - lazy am i */    while(i++ < n) {    if((gps_db)->seq(gps_db, &key, &value, R_NEXT) < 0)      return NULL;    if(strncmp((char*)key.data, ap_mac, strlen(ap_mac)) != 0)      return NULL;  }done:    if(value.size == sizeof(gps_record)) {    gps_record * outbuf = (gps_record*)calloc(1, sizeof(gps_record));    memcpy(&outbuf->value, value.data, value.size);    memcpy(outbuf->key.ap_mac, keybuf, 18);    outbuf->key.link_quality = atoi(keybuf+18);    return outbuf;  }    return NULL;}int gps_db_exists(const char *ap_mac){  DBT key = { 0, 0 };  DBT value = { 0, 0 };  char keybuf[strlen(ap_mac) + 1];  if(ap_mac == NULL)    return 0;  gps_db_open();  key.data  = keybuf;  key.size  = strlen(ap_mac) + 1;  strcpy(keybuf, ap_mac);  if((gps_db)->seq(gps_db, &key, &value, R_CURSOR) >= 0) {    if(strncmp((char*)key.data, ap_mac, strlen(ap_mac)) == 0) {      return 1;    }  }  return 0;}void gps_db_iterate(void (*func)(gps_record *, void *), void *user){  DBT key   = { 0, 0 };  DBT value = { 0, 0 };  gps_record record;  gps_db_open();  (gps_db)->seq(gps_db, &key, &value, R_FIRST);  if(key.size == 0)    return;  do {    memset(&record, 0, sizeof(record));    memcpy(&(record.value), value.data, sizeof(gps_record));    memcpy(record.key.ap_mac, key.data, 18);    record.key.link_quality = atoi((char*)key.data + 18);    func(&record, user);  } while((gps_db)->seq(gps_db, &key, &value, R_NEXT) == 0);    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
voyeur盗摄精品| 丝袜美腿亚洲综合| 懂色av噜噜一区二区三区av| 26uuu精品一区二区在线观看| 天天色综合成人网| 91精品国产综合久久福利软件 | 欧美午夜免费电影| 日韩电影在线一区二区| 欧美成人综合网站| 成人丝袜18视频在线观看| 亚洲欧美在线视频| 青椒成人免费视频| 亚洲成人手机在线| 日韩一区二区精品在线观看| 99re这里只有精品首页| 韩国v欧美v日本v亚洲v| 日本欧美大码aⅴ在线播放| 91久久精品网| 一区二区三区免费观看| 欧美精品九九99久久| 亚洲aaa精品| 5月丁香婷婷综合| 日本在线不卡视频一二三区| 91精品久久久久久久99蜜桃| 日韩黄色在线观看| 久久先锋影音av| a级高清视频欧美日韩| 亚洲免费成人av| 国产欧美精品一区| 在线电影国产精品| 欧美性受xxxx| 91福利视频久久久久| 高清shemale亚洲人妖| 免费看精品久久片| 亚洲欧美国产三级| 国产精品女主播av| 欧美刺激午夜性久久久久久久| 欧美伊人久久久久久久久影院 | 国产精品高清亚洲| 精品国产乱子伦一区| 欧美放荡的少妇| 欧美在线一二三| 99国产精品99久久久久久| 成人激情校园春色| 韩国av一区二区三区| 国产福利91精品一区二区三区| 欧美三级乱人伦电影| 国产日韩欧美精品综合| 久久精品水蜜桃av综合天堂| 亚洲免费在线观看| 国产xxx精品视频大全| 国产精品自在在线| 不卡视频在线观看| 91国产免费看| 91精品免费观看| 久久久久久麻豆| 国产精品午夜电影| 一区二区欧美国产| 日本不卡的三区四区五区| 久热成人在线视频| 成人av先锋影音| 在线观看亚洲一区| 正在播放一区二区| 久久婷婷一区二区三区| 国产欧美日本一区二区三区| 一区二区欧美精品| 国产盗摄一区二区| 精品视频在线视频| 精品国内二区三区| 日本一区二区三区久久久久久久久不| 最新国产精品久久精品| 丝袜美腿亚洲色图| 色八戒一区二区三区| 欧美一级淫片007| 亚洲福利视频一区二区| 亚洲成av人影院| 国产成人小视频| 欧美高清dvd| 一区二区三区免费| 国内精品嫩模私拍在线| www.色精品| 国产日韩欧美综合一区| 亚洲愉拍自拍另类高清精品| 国产寡妇亲子伦一区二区| 欧美三级电影在线观看| 国产精品国产自产拍在线| 九色综合国产一区二区三区| 欧美性色aⅴ视频一区日韩精品| 久久精品综合网| 韩日av一区二区| 日韩一区二区三区观看| 另类专区欧美蜜桃臀第一页| 欧美一区二区三区不卡| 另类人妖一区二区av| 久久久精品黄色| 色老汉一区二区三区| 天天色综合天天| 国产精品久久久一本精品| 精品视频1区2区| 九九九精品视频| 亚洲人123区| 精品99999| 青青草国产成人99久久| 欧美va亚洲va香蕉在线| 国产一区二区中文字幕| 国产精品午夜电影| 欧美视频三区在线播放| 日本亚洲电影天堂| 国产午夜精品久久久久久免费视 | 国产精品成人网| 欧美偷拍一区二区| 韩国女主播一区| 一区二区三区在线视频播放| 日韩一区二区免费在线观看| 国产福利一区二区三区| 亚洲成人777| 亚洲欧美一区二区不卡| 欧美一级一区二区| 波多野结衣视频一区| 免费观看91视频大全| 亚洲美女屁股眼交3| 久久综合九色综合久久久精品综合| www.亚洲人| 国产一区二区三区不卡在线观看| 曰韩精品一区二区| 国产欧美日韩在线| 久久亚区不卡日本| 日韩丝袜美女视频| 国产精品欧美精品| wwwwxxxxx欧美| 69堂亚洲精品首页| 欧美最猛性xxxxx直播| 国产成人在线视频网站| 日韩高清在线不卡| 亚洲第一综合色| 亚洲成在线观看| 亚洲成av人片一区二区梦乃| 亚洲精品第一国产综合野| 国产精品网站在线| 中文字幕在线不卡| 国产精品麻豆视频| 国产色产综合色产在线视频 | 成人免费看的视频| 成人av在线播放网站| 懂色av中文一区二区三区| 国产精品一品二品| 不卡av免费在线观看| 91麻豆自制传媒国产之光| 97se亚洲国产综合自在线观| 懂色av一区二区夜夜嗨| 成人app在线观看| 在线精品视频一区二区| 欧美日本在线播放| 欧美巨大另类极品videosbest| 91精品婷婷国产综合久久| 日韩欧美国产1| 久久久国产精华| 一区二区三区高清| 美女高潮久久久| 成人午夜在线视频| 欧美日本一区二区在线观看| 精品少妇一区二区三区免费观看| 国产三级三级三级精品8ⅰ区| 欧美经典一区二区| 午夜精品福利一区二区蜜股av| 视频在线观看一区二区三区| 懂色中文一区二区在线播放| 欧美日韩一区二区三区四区五区| 日韩美女视频在线| 亚洲自拍另类综合| www.欧美亚洲| 欧美一级在线免费| 亚洲欧美一区二区视频| 九九视频精品免费| 欧美日韩精品一区二区三区| 亚洲精品一区二区三区精华液| 亚洲精品久久嫩草网站秘色| 狠狠久久亚洲欧美| 日韩视频免费观看高清完整版在线观看| 中文字幕亚洲欧美在线不卡| 久久黄色级2电影| 欧美这里有精品| ●精品国产综合乱码久久久久| 日韩不卡一区二区| 777色狠狠一区二区三区| 亚洲精品网站在线观看| 国产精品亚洲人在线观看| 精品成人在线观看| 久久激情五月激情| 精品成人在线观看| 国产乱码精品一区二区三区av| 精品日产卡一卡二卡麻豆| 蜜桃一区二区三区在线观看| 欧美一级高清大全免费观看| 青青草视频一区| 久久久青草青青国产亚洲免观| 精品亚洲免费视频| 欧美国产97人人爽人人喊| 成人成人成人在线视频| 亚洲黄网站在线观看|