Xianfu Lei

186 papers B 8C 5Misc 2Journal 143Unranked 28
YearRankTypeTitle / Venue / Authors
2026 J jnl
IEEE Trans. Commun.
Kang Zhou, Weixi Zhou, Donghong Cai, Xianfu Lei, Yanqing Xu, Zhiguo Ding, Pingzhi Fan
2026 J jnl
IEEE Trans. Commun.
Yunzhi Wu, Li Li, Pingzhi Fan, Xianfu Lei, Xiaohu Tang
2026 J jnl
IEEE J. Sel. Areas Commun.
Ziwei Wang, Xianfu Lei, Xiangjun Ma, Lisheng Fan, Xiaohu Tang
2026 J jnl
IEEE J. Sel. Areas Commun.
Shuaixin Yang, Yue Xiao, Yong Liang Guan, Xianfu Lei, Hyundong Shin, George K. Karagiannidis
2026 J jnl
IEEE J. Sel. Areas Commun.
Qi Jin, Lisheng Fan, Xianfu Lei, Wei Xu, Pingzhi Fan
2026 J jnl
IEEE Wirel. Commun. Lett.
Pengju Wang, Xianfu Lei, Xiangjun Ma, Xingwang Li, Xiaohu Tang
2026 J jnl
IEEE Trans. Veh. Technol.
Xinwei Xu, Yue Xiao, Jiangong Chen, Min Liu, Xianfu Lei, Ming Xiao
2026 J jnl
IEEE Trans. Netw. Sci. Eng.
Ziqiang Ye, Yulan Gao, Yue Xiao, Xianfu Lei, Pingzhi Fan, George K. Karagiannidis
2026 J jnl
IEEE Trans. Cogn. Commun. Netw.
Fuhong Song, Mingsen Deng, Huanlai Xing, Yanping Liu, Zhiwen Xiao, Lexi Xu, Xianfu Lei
2026 J jnl
IEEE Wirel. Commun. Lett.
Yuan Zhong, Jiangong Chen, Yue Xiao, Shuaixin Yang, Xianfu Lei, Yulan Gao, Ming Xiao
2026 J jnl
IEEE Trans. Wirel. Commun.
Shuaixin Yang, Yijia Li, Yue Xiao, Yong Liang Guan, Xianfu Lei, Zhiguo Ding
2026 J jnl
IEEE Commun. Mag.
Xingwang Li, Yuan Gao, Ming Zeng, Xianfu Lei, Wanming Hao, Arumugam Nallanathan, Octavia A. Dobre
2026 J jnl
IEEE Trans. Commun.
Pengju Wang, Xianfu Lei, Mingjiang Wu, Lisheng Fan
2026 J jnl
IEEE Wirel. Commun. Lett.
Haoyang Li, Zheng Yang, Xianfu Lei, Zhiguo Ding
2026 J jnl
IEEE Trans. Veh. Technol.
Chunhong Chen, Le He, Lisheng Fan, Xianfu Lei, Arumugam Nallanathan
2025 J jnl
CoRR
Kang Zhou, Weixi Zhou, Donghong Cai, Xianfu Lei, Yanqing Xu, Zhiguo Ding, Pingzhi Fan
2025 J jnl
IEEE J. Sel. Areas Commun.
Junjie Li, Liang Yang, Qingqing Wu, Xianfu Lei, Fuhui Zhou, Feng Shu, Xidong Mu, Yuanwei Liu, Pingzhi Fan
2025 J jnl
IEEE J. Sel. Areas Commun.
Zhengquan Zhang, Yuchen Wu, Zheng Ma, Xianfu Lei, Lei Lei, Zhiqiang Wei
2025 J jnl
IEEE Trans. Commun.
Qi Jin, Lisheng Fan, Xianfu Lei, Junhui Zhao, Arumugam Nallanathan
2025 J jnl
IEEE Wirel. Commun. Lett.
Yanrui Wang, Lilin Dan, Yue Xiao, Hao Chen, Xianfu Lei, Wei Xiang
2025 conf
IWSDA
Xueping Lan, Xiaoxu Zhang, Pingzhi Fan, Zhengquan Zhang, Xianfu Lei, Yi Zhou, Li Hao, Zheng Ma
2025 J jnl
IEEE Trans. Veh. Technol.
YanLiang Zhang, Ming Ge, Xingwang Li, Xianfu Lei, Shuping Dang, Ji Wang, Jianhua Zhang
2025 J jnl
IEEE Signal Process. Lett.
Jincheng Peng, Huanlai Xing, Zhiwen Xiao, Lexi Xu, Xianfu Lei
2025 J jnl
IEEE Trans. Intell. Transp. Syst.
Fuhong Song, Huanlai Xing, Lexi Xu, Ming Xiao, Yanping Liu, Mingsen Deng, Xu Chen, Xianfu Lei
2025 J jnl
IEEE Internet Things J.
Yuan Zhong, Yijia Li, Yue Xiao, Xianfu Lei, Ming Xiao
2025 J jnl
IEEE Trans. Veh. Technol.
Mingjiang Wu, Xianfu Lei, Ibrahim Al-Nahhal, Octavia A. Dobre
2025 J jnl
IEEE Wirel. Commun. Lett.
Ziwen Wei, Mengyan Huang, Guozhan Zhang, Xianfu Lei, Wanming Hao, Xingwang Li, Jianhua Zhang
2025 J jnl
CoRR
Ke He, Le He, Lisheng Fan, Xianfu Lei, Thang X. Vu, George K. Karagiannidis, Symeon Chatzinotas
2025 J jnl
IEEE Trans. Commun.
Meng Shen, Xianfu Lei, Xiangyun Zhou, George K. Karagiannidis
2025 J jnl
IEEE Wirel. Commun. Lett.
Zihao Huang, Xianfu Lei, Meng Shen, Mingjiang Wu, Xingwang Li, George K. Karagiannidis
2025 J jnl
IEEE Wirel. Commun. Lett.
Ziwei Wang, Xianfu Lei, Lisheng Fan, Xingwang Li
2025 J jnl
Digit. Commun. Networks
Yanbo Zhang, Zheng Yang, Jingjing Cui, Xianfu Lei, Yi Wu, Jun Zhang, Chao Fang, Zhiguo Ding
2025 J jnl
IEEE Wirel. Commun. Lett.
Yijia Li, Shuaixin Yang, Yue Xiao, Xianfu Lei, Ming Xiao
2025 J jnl
IEEE Commun. Mag.
Le He, Lisheng Fan, Xianfu Lei, Pingzhi Fan, Arumugam Nallanathan, George K. Karagiannidis
2025 J jnl
IEEE Trans. Commun.
Mingjiang Wu, Xianfu Lei, Ibrahim Al-Nahhal, Octavia A. Dobre, Luyao Sun
2025 J jnl
IEEE Trans. Veh. Technol.
Ziwei Wang, Xianfu Lei, P. Takis Mathiopoulos, Gongpu Wang
2024 J jnl
IEEE Trans. Veh. Technol.
Xiangjun Ma, Xianfu Lei, P. Takis Mathiopoulos, Daniel Benevides da Costa
2024 J jnl
IEEE Trans. Veh. Technol.
Ziqi Cui, Gongpu Wang, Jie Gao, Xianfu Lei, Chintha Tellambura
2024 J jnl
IEEE Internet Things J.
Haoyu Zhan, Lisheng Fan, Chao Li, Xianfu Lei, Feng Li
2024 J jnl
IEEE Trans. Commun.
Shunpu Tang, Qianqian Yang, Lisheng Fan, Xianfu Lei, Arumugam Nallanathan, George K. Karagiannidis
2024 J jnl
IEEE J. Sel. Areas Commun.
Xiangdong Zheng, Yuxin Wu, Lisheng Fan, Xianfu Lei, Rose Qingyang Hu, George K. Karagiannidis
2024 conf
ICCT
Mingjiang Wu, Xianfu Lei, Ibrahim Al-Nahhal, Octavia A. Dobre, Luyao Sun
2024 J jnl
Digit. Commun. Networks
Shenghai Chen, Liang Yang, Xianfu Lei
2024 J jnl
IEEE Trans. Consumer Electron.
Yuxin Wu, Shunpu Tang, Lianhong Zhang, Lisheng Fan, Xianfu Lei, Xiang Chen
2024 J jnl
IEEE Trans. Veh. Technol.
Meng Shen, Li Li, Xianfu Lei
2024 J jnl
IEEE Trans. Wirel. Commun.
Meng Shen, Xianfu Lei, P. Takis Mathiopoulos, Xiaohu Tang, Rose Qingyang Hu, Pingzhi Fan
2024 J jnl
IEEE Wirel. Commun. Lett.
Mingjiang Wu, Xianfu Lei, Daniel Benevides da Costa
2024 J jnl
CoRR
Lu Lv, Dongyang Xu, Rose Qingyang Hu, Yinghui Ye, Long Yang, Xianfu Lei, Xianbin Wang, Dong In Kim, Arumugam Nallanathan
2024 J jnl
Proc. IEEE
Lu Lv, Dongyang Xu, Rose Qingyang Hu, Yinghui Ye, Long Yang, Xianfu Lei, Xianbin Wang, Dong In Kim, Arumugam Nallanathan
2024 conf
ICCT
Ziwei Wang, Xianfu Lei, Daniel Benevides da Costa, Kai Yu
2024 J jnl
IEEE Wirel. Commun. Lett.
Jincheng Peng, Huanlai Xing, Yang Li, Li Feng, Lexi Xu, Xianfu Lei
2024 J jnl
IEEE Veh. Technol. Mag.
Zhengquan Zhang, Yuchen Wu, Xianfu Lei, Lei Lei, Zhiqiang Wei
2024 J jnl
IEEE Trans. Veh. Technol.
Zhangjie Peng, Tianshu Li, Cunhua Pan, Xianfu Lei, Shi Jin
2023 conf
ICCC Workshops
Hao Chen, Yanyan Wang, Siqi Wu, Xianfu Lei
2023 J jnl
IEEE J. Sel. Areas Commun.
Shunpu Tang, Ke He, Lunyuan Chen, Lisheng Fan, Xianfu Lei, Rose Qingyang Hu
2023 conf
VTC Fall
Shunpu Tang, Qianqian Yang, Lisheng Fan, Xianfu Lei, Yansha Deng, Arumugam Nallanathan
2023 J jnl
CoRR
Shunpu Tang, Qianqian Yang, Lisheng Fan, Xianfu Lei, Yansha Deng, Arumugam Nallanathan
2023 J jnl
IEEE Trans. Cogn. Commun. Netw.
Le He, Lisheng Fan, Xianfu Lei, Xiaohu Tang, Pingzhi Fan, Arumugam Nallanathan
2023 J jnl
IEEE Netw.
Yulan Gao, Yue Xiao, Xianfu Lei, Qiaonan Zhu, Dusit Niyato, Kai-Kit Wong, Pingzhi Fan, Rose Qingyang Hu
2023 J jnl
IEEE Trans. Veh. Technol.
Wenqi Zhou, Lisheng Fan, Fasheng Zhou, Feng Li, Xianfu Lei, Wei Xu, Arumugam Nallanathan
2023 J jnl
IEEE Trans. Veh. Technol.
Wenqi Zhou, Junjuan Xia, Fasheng Zhou, Lisheng Fan, Xianfu Lei, Arumugam Nallanathan, George K. Karagiannidis
2023 J jnl
IEEE Wirel. Commun. Lett.
Juanjuan Ren, Xianfu Lei, Zhangjie Peng, Xiaohu Tang, Octavia A. Dobre
2023 J jnl
IEEE Trans. Commun.
Mingjiang Wu, Xianfu Lei, Xiangyun Zhou, Xiaohu Tang, Octavia A. Dobre
2023 J jnl
IEEE Trans. Commun.
Lunyuan Chen, Lisheng Fan, Xianfu Lei, Trung Q. Duong, Arumugam Nallanathan, George K. Karagiannidis
2023 J jnl
IEEE Trans. Veh. Technol.
Meng Shen, Xianfu Lei, P. Takis Mathiopoulos, Rose Qingyang Hu
2023 J jnl
IEEE Trans. Veh. Technol.
Xiangjun Ma, Xianfu Lei, P. Takis Mathiopoulos, Kai Yu, Xiaohu Tang
2023 J jnl
IEEE Trans. Inf. Forensics Secur.
Xiangjun Ma, Xianfu Lei, Xiangyun Zhou, Xiaohu Tang
2022 conf
ICC
Fuhui Zhou, Yihao Li, Xinyuan Zhang, Qihui Wu, Xianfu Lei, Rose Qingyang Hu
2022 J jnl
CoRR
Fuhui Zhou, Yihao Li, Xinyuan Zhang, Qihui Wu, Xianfu Lei, Rose Qingyang Hu
2022 conf
VTC Fall
Mingming Wu, Yue Xiao, Yulan Gao, Xianfu Lei
2022 J jnl
IEEE Trans. Veh. Technol.
Shunpu Tang, Junjuan Xia, Lisheng Fan, Xianfu Lei, Wei Xu, Arumugam Nallanathan
2022 J jnl
IEEE J. Sel. Top. Signal Process.
Yinghao Guo, Rui Zhao, Shiwei Lai, Lisheng Fan, Xianfu Lei, George K. Karagiannidis
2022 J jnl
IEEE Trans. Commun.
Ke He, Le He, Lisheng Fan, Xianfu Lei, Yansha Deng, George K. Karagiannidis
2022 J jnl
CoRR
Zhifan Ye, Zhengchun Zhou, Pingzhi Fan, Zilong Liu, Xianfu Lei, Xiaohu Tang
2022 J jnl
IEEE J. Sel. Areas Commun.
Zhifan Ye, Zhengchun Zhou, Pingzhi Fan, Zilong Liu, Xianfu Lei, Xiaohu Tang
2022 C conf
ISNCC
Qiaonan Zhu, Xinyuan Zhang, Yue Xiao, Yulan Gao, Xianfu Lei, Zehui Xiong
2022 J jnl
CoRR
Yulan Gao, Yue Xiao, Xianfu Lei, Qiaonan Zhu, Dusit Niyato, Kai-Kit Wong, Pingzhi Fan, Rose Qingyang Hu
2022 J jnl
CoRR
Juanjuan Ren, Xianfu Lei, Zhangjie Peng, Xiaohu Tang, Octavia A. Dobre
2022 J jnl
IEEE Trans. Commun.
Xiazhi Lai, Lisheng Fan, Xianfu Lei, Yansha Deng, George K. Karagiannidis, Arumugam Nallanathan
2022 J jnl
IEEE Trans. Veh. Technol.
Jianglong Li, Xianfu Lei, Panagiotis D. Diamantoulakis, Lisheng Fan, George K. Karagiannidis
2022 J jnl
Mob. Networks Appl.
Qingyue Long, Yanliang Chen, Haijun Zhang, Xianfu Lei
2022 J jnl
IEEE Trans. Veh. Technol.
Zichao Zhao, Junjuan Xia, Lisheng Fan, Xianfu Lei, George K. Karagiannidis, Arumugam Nallanathan
2022 J jnl
IEEE Trans. Commun.
Le He, Ke He, Lisheng Fan, Xianfu Lei, Arumugam Nallanathan, George K. Karagiannidis
2022 conf
ICC
Xiangjun Ma, Xianfu Lei, Xinyuan Zhang, P. Takis Mathiopoulos, Kai Yu, Xiaohu Tang
2021 B conf
WCNC
Yingjie Xu, Kai Yu, Li Li, Xianfu Lei, Li Hao, Cheng-Xiang Wang
2021 J jnl
CoRR
Shunpu Tang, Junjuan Xia, Lisheng Fan, Xianfu Lei, Wei Xu, Arumugam Nallanathan
2021 J jnl
IEEE Trans. Commun.
Juanjuan Ren, Xianfu Lei, P. Takis Mathiopoulos
2021 J jnl
IEEE Trans. Veh. Technol.
Juanjuan Ren, Xianfu Lei, Panagiotis D. Diamantoulakis, Fuhui Zhou, Xiaohu Tang, Octavia A. Dobre
2021 J jnl
IEEE Trans. Veh. Technol.
Xiangjun Ma, Xianfu Lei, Wei Xu, P. Takis Mathiopoulos
2021 conf
VTC Fall
Yufeng Han, Yue Xiao, Yulan Gao, Xianfu Lei, Binhong Dong, George K. Karagiannidis
2021 J jnl
IEEE Trans. Veh. Technol.
Mingjiang Wu, Xianfu Lei, Xiangyun Zhou, Yue Xiao, Xiaohu Tang, Rose Qingyang Hu
2021 J jnl
IEEE Wirel. Commun.
Xianfu Lei, Mingjiang Wu, Fuhui Zhou, Xiaohu Tang, Rose Qingyang Hu, Pingzhi Fan
2021 J jnl
CoRR
Xiangjun Ma, Xianfu Lei, P. Takis Mathiopoulos, Kai Yu, Xiaohu Tang
2021 C conf
ICCC
Zhifan Ye, Zhengchun Zhou, Pingzhi Fan, Xianfu Lei, Zilong Liu, Xiaohu Tang
2021 J jnl
Cryptogr. Commun.
Chen Liu, Shuaijun Liu, Xianfu Lei, Avik Ranjan Adhikary, Zhengchun Zhou
2020 J jnl
IEEE Trans. Ind. Informatics
Zichao Zhao, Rui Zhao, Junjuan Xia, Xianfu Lei, Dong Li, Chau Yuen, Lisheng Fan
2020 C conf
ICCC
Weidong Shao, Shun Zhang, Caijun Zhong, Xianfu Lei, Pingzhi Fan
2020 J jnl
IEEE Trans. Veh. Technol.
Juanjuan Ren, Xianfu Lei, Panagiotis D. Diamantoulakis, Qingchun Chen, George K. Karagiannidis
2020 J jnl
IEEE Access
Stylianos E. Trevlakis, Alexandros-Apostolos A. Boulogeorgos, Nestor D. Chatzidiamantis, George K. Karagiannidis, Xianfu Lei
2020 J jnl
IEEE J. Sel. Areas Commun.
Teng Ma, Yue Xiao, Xia Lei, Ping Yang, Xianfu Lei, Octavia A. Dobre
2020 J jnl
IEEE Trans. Commun.
Jianglong Li, Xianfu Lei, Panagiotis D. Diamantoulakis, Fuhui Zhou, Panagiotis G. Sarigiannidis, George K. Karagiannidis
2020 conf
VTC Spring
Juanjuan Ren, Xianfu Lei, Panagiotis D. Diamantoulakis, Qingchun Chen, George K. Karagiannidis
2020 conf
ICC
Juanjuan Ren, Xianfu Lei, Fuhui Zhou, Panagiotis D. Diamantoulakis, Octavia A. Dobre, George K. Karagiannidis
2019 J jnl
IEEE Veh. Technol. Mag.
Zhengquan Zhang, Alice Yue Xiao, Zheng Ma, Ming Xiao, Zhiguo Ding, Xianfu Lei, George K. Karagiannidis, Pingzhi Fan
2019 J jnl
Sensors
Kai Zhai, Zheng Ma, Xianfu Lei
2019 J jnl
IEEE Trans. Commun.
Yu Zhang, Feifei Gao, Lisheng Fan, Xianfu Lei, George K. Karagiannidis
2019 conf
ICC
Jianglong Li, Xianfu Lei, Panagiotis D. Diamantoulakis, Panagiotis G. Sarigiannidis, George K. Karagiannidis
2019 J jnl
IEEE Trans. Inf. Forensics Secur.
Xiazhi Lai, Lisheng Fan, Xianfu Lei, Jin Li, Nan Yang, George K. Karagiannidis
2019 J jnl
IEEE Access
Xiaosheng Lin, Yuhao Tang, Xianfu Lei, Junjuan Xia, Qing F. Zhou, Huijun Wu, Liseng Fan
2019 J jnl
Telecommun. Syst.
Dongqin Gu, Jing Yang, Xianfu Lei, Rui Gao
2019 J jnl
IEEE Trans. Commun.
Junjuan Xia, Lisheng Fan, Wei Xu, Xianfu Lei, Xiang Chen, George K. Karagiannidis, Arumugam Nallanathan
2019 J jnl
IEEE Wirel. Commun. Lett.
Yu Zhang, Feifei Gao, Lisheng Fan, Xianfu Lei, George K. Karagiannidis
2018 B conf
GLOBECOM
Panagiotis D. Diamantoulakis, Koralia N. Pappi, Zheng Ma, Xianfu Lei, Paschalis C. Sofotasios, George K. Karagiannidis
2018 C conf
APCC
Yu Zhang, Feifei Gao, Lisheng Fan, Xianfu Lei, George K. Karagiannidis
2018 J jnl
IEEE Access
Dongqing Xie, Xiazhi Lai, Xianfu Lei, Lisheng Fan
2018 J jnl
IEEE Commun. Lett.
Fasheng Zhou, Lisheng Fan, Xianfu Lei, Gaoyong Luo, Haijun Zhang, Junhui Zhao
2018 J jnl
IEEE Trans. Veh. Technol.
Jing Yang, Lei Chen, Xianfu Lei, Zhiguo Ding, Pingzhi Fan, Xiqi Gao
2018 J jnl
IEEE Trans. Commun.
Zhengquan Zhang, Zheng Ma, Ming Xiao, Xianfu Lei, Zhiguo Ding, Pingzhi Fan
2018 J jnl
IEEE Trans. Veh. Technol.
Lisheng Fan, Nan Zhao, Xianfu Lei, Qingchun Chen, Nan Yang, George K. Karagiannidis
2018 J jnl
IEEE Wirel. Commun.
Zhengquan Zhang, Zheng Ma, Xianfu Lei, Ming Xiao, Cheng-Xiang Wang, Pingzhi Fan
2018 conf
WCSP
Lisheng Fan, Xianfu Lei, Nan Zhao, Pingzhi Fan, George K. Karagiannidis
2017 J jnl
CoRR
Zhiguo Ding, Xianfu Lei, George K. Karagiannidis, Robert Schober, Jinhong Yuan, Vijay K. Bhargava
2017 J jnl
IEEE J. Sel. Areas Commun.
Zhiguo Ding, Xianfu Lei, George K. Karagiannidis, Robert Schober, Jinhong Yuan, Vijay K. Bhargava
2017 J jnl
IEEE Commun. Lett.
Lisu Yu, Pingzhi Fan, Xianfu Lei, P. Takis Mathiopoulos
2017 conf
VTC Spring
Jingjing Cui, Pingzhi Fan, Xianfu Lei, Zheng Ma, Zhiguo Ding
2017 conf
VTC Spring
Zhicheng Dong, Pingzhi Fan, Xianfu Lei
2017 conf
WCSP
Fang Shi, Dongqing Xie, Weiqiang Tan, Xianfu Lei, Lisheng Fan
2017 J jnl
IEEE Access
Dan Deng, Lisheng Fan, Xianfu Lei, Weiqiang Tan, Dongqing Xie
2017 J jnl
IEEE Wirel. Commun. Lett.
Zheng Yang, Xianfu Lei, Zhiguo Ding, Pingzhi Fan, George K. Karagiannidis
2017 J jnl
IEEE Trans. Veh. Technol.
Lisheng Fan, Xianfu Lei, Nan Yang, Trung Quang Duong, George K. Karagiannidis
2016 conf
VTC Fall
Lisu Yu, Pingzhi Fan, Zheng Ma, Xianfu Lei, Dageng Chen
2016 J jnl
IEEE Trans. Veh. Technol.
Jing Yang, Lei Chen, Xianfu Lei, Kostas P. Peppas, Trung Quang Duong
2016 J jnl
IEEE Access
Zheng Yang, Jingjing Cui, Xianfu Lei, Zhiguo Ding, Pingzhi Fan, Dageng Chen
2016 conf
VTC Spring
Yi Li, Xianfu Lei, Pingzhi Fan, Dageng Chen
2016 conf
VTC Spring
Donghong Cai, Pingzhi Fan, Xianfu Lei, Yingjie Liu, Dageng Chen
2016 J jnl
IEEE Trans. Veh. Technol.
Zhicheng Dong, Pingzhi Fan, Rose Qingyang Hu, Jake Gunther, Xianfu Lei
2016 J jnl
Wirel. Commun. Mob. Comput.
Xianfu Lei, Rose Qingyang Hu, Lisheng Fan, Geng Wu
2016 J jnl
Wirel. Commun. Mob. Comput.
Xianfu Lei, Rose Qingyang Hu, Lisheng Fan, Pingzhi Fan, Trung Quang Duong
2016 J jnl
IEEE Access
Zhicheng Dong, Pingzhi Fan, Xianfu Lei, Erdal Panayirci
2016 J jnl
IEEE J. Sel. Top. Signal Process.
Lisheng Fan, Xianfu Lei, Nan (Jonas) Yang, Trung Quang Duong, George K. Karagiannidis
2015 conf
WCSP
Yi Li, Xianfu Lei, Pingzhi Fan, Dageng Chen
2015 conf
WCSP
Lisu Yu, Xianfu Lei, Pingzhi Fan, Dageng Chen
2015 J jnl
IEEE Trans. Veh. Technol.
Zhicheng Dong, Pingzhi Fan, Erdal Panayirci, Xianfu Lei
2015 J jnl
IEEE Trans. Veh. Technol.
Xian Wang, Keqin Li, Ray-Guang Cheng, Pingzhi Fan, Xianfu Lei, Rose Qingyang Hu
2015 conf
ICC
Jing Yang, Trung Quang Duong, Maged Elkashlan, Xianfu Lei, Xiqi Gao
2015 J jnl
IEEE Commun. Lett.
Zhicheng Dong, Pingzhi Fan, Xianfu Lei
2015 conf
HMWC
Jing Zhao, Pingzhi Fan, Norman C. Beaulieu, Xianfu Lei
2014 J jnl
IEEE Trans. Veh. Technol.
Xian Wang, Xianfu Lei, Pingzhi Fan, Rose Qingyang Hu, Shi-Jinn Horng
2014 Misc conf
ICNC
Xian Wang, Xianfu Lei, Rose Qingyang Hu, Geng Wu
2014 J jnl
Trans. Emerg. Telecommun. Technol.
Lisheng Fan, Xianfu Lei, Hongbin Chen, Wen Zhou
2014 J jnl
Signal Process.
Xutao Li, Shouyong Wang, Lisheng Fan, Xianfu Lei
2014 Misc conf
ICCS
Zhicheng Dong, Pingzhi Fan, Xianfu Lei
2014 conf
ICC
Xian Wang, Xianfu Lei, Rose Qingyang Hu, Yi Qian
2014 J jnl
IEEE Trans. Wirel. Commun.
Lisheng Fan, Xianfu Lei, Trung Quang Duong, Rose Qingyang Hu, Maged Elkashlan
2014 conf
ICC
Xianfu Lei, Rose Qingyang Hu, Trung Quang Duong, Lisheng Fan, Maged Elkashlan
2014 conf
VTC Fall
Zhicheng Dong, Pingzhi Fan, Erdal Panayirci, Xianfu Lei
2014 J jnl
IEEE Trans. Commun.
Lisheng Fan, Xianfu Lei, Trung Quang Duong, Maged Elkashlan, George K. Karagiannidis
2014 B conf
GLOBECOM
Xianfu Lei, Lisheng Fan, Rose Qingyang Hu, Diomidis S. Michalopoulos, Pingzhi Fan
2014 B conf
GLOBECOM
Lisheng Fan, Xianfu Lei, Trung Quang Duong, Maged Elkashlan, George K. Karagiannidis
2014 conf
ChinaCom
Jing Yang, Xianfu Lei, Xiqi Gao, Xuelong Hu
2013 J jnl
IET Commun.
Jing Yang, Pingzhi Fan, Qingchun Chen, Xianfu Lei
2013 J jnl
IEEE Wirel. Commun. Lett.
Lisheng Fan, Xianfu Lei, Rose Qingyang Hu, Shengli Zhang
2013 J jnl
IEEE Commun. Lett.
Xianfu Lei, Lisheng Fan, Diomidis S. Michalopoulos, Pingzhi Fan, Rose Qingyang Hu
2013 B conf
WCNC
Xianfu Lei, Lisheng Fan, Pingzhi Fan, Rose Qingyang Hu, Xian Wang
2013 B conf
WCNC
Lisheng Fan, Xianfu Lei, Rose Qingyang Hu, Winston Seah
2013 J jnl
IEEE Trans. Veh. Technol.
Lisheng Fan, Xianfu Lei, Rose Qingyang Hu, Winston Seah
2013 B conf
GLOBECOM
Xianfu Lei, Rose Qingyang Hu, Feifei Gao, Yi Qian
2012 C conf
ICCC
Xianfu Lei, Wen Zhou, Pingzhi Fan, Lisheng Fan
2012 J jnl
Wirel. Commun. Mob. Comput.
Kai Yu, Pingzhi Fan, Li Hao, Xianfu Lei
2012 J jnl
IEEE Commun. Lett.
Lisheng Fan, Xutao Li, Xianfu Lei, Wei Li, Feifei Gao
2012 J jnl
IEEE Commun. Lett.
Lisheng Fan, Xianfu Lei, Pingzhi Fan, Rose Qingyang Hu
2012 J jnl
IEEE Wirel. Commun. Lett.
Mao Yan, Qingchun Chen, Xianfu Lei, Trung Quang Duong, Pingzhi Fan
2011 J jnl
IEEE Commun. Lett.
Lisheng Fan, Xianfu Lei
2011 J jnl
IEEE Commun. Lett.
Lisheng Fan, Xianfu Lei, Wei Li
2011 J jnl
IEEE Trans. Wirel. Commun.
Jing Yang, Pingzhi Fan, Trung Quang Duong, Xianfu Lei
2010 J jnl
CoRR
Trung Quang Duong, Chau Yuen, Hans-Jürgen Zepernick, Xianfu Lei
2010 conf
WCSP
Lisheng Fan, Xianfu Lei, Feifei Gao
2010 J jnl
EURASIP J. Wirel. Commun. Netw.
Bin Liu, Hongyang Chen, Xianfu Lei, Fengyuan Ren, Kaoru Sezaki
2010 J jnl
Wirel. Pers. Commun.
Xianfu Lei, Pingzhi Fan
2010 J jnl
KSII Trans. Internet Inf. Syst.
Kai Yu, Yi Sun, Pingzhi Fan, Xianfu Lei, Lei Shu
2009 J jnl
IEEE Trans. Wirel. Commun.
Xianfu Lei, Pingzhi Fan
2009 J jnl
EURASIP J. Adv. Signal Process.
Xianfu Lei, Kai Yu, Pingzhi Z. Fan
2009 B conf
WCNC
Kai Yu, Yi Sun, Pingzhi Fan, Xianfu Lei
2008 J jnl
IEEE Commun. Lett.
Xianfu Lei, Pingzhi Fan
2007 J jnl
IEEE Commun. Lett.
Xianfu Lei, Pingzhi Fan, Li Hao
2007 J jnl
IEEE Commun. Lett.
Xianfu Lei, Pingzhi Fan, Qingchun Chen
tests/integration/test_pe_extractor.py
← Index tests/integration/test_pe_extractor.py python
"""
Integration tests for the PEExtractor base class.
"""
import pytest
from unittest.mock import Mock, patch, MagicMock

pytestmark = [pytest.mark.integration, pytest.mark.pe]


class TestPEExtractorInitialization:
    """Tests for PEExtractor initialization."""

    def test_pe_extractor_with_valid_pe(self, pe_binary_path, mock_logger):
        """Test PEExtractor initialization with valid PE file."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            assert extractor.pe is not None
            assert extractor.filepath == pe_binary_path

    def test_pe_extractor_with_provided_pe_object(self, pe_binary_path, mock_logger, pe_object):
        """Test PEExtractor initialization with pre-existing PE object."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger, pe=pe_object)

            # Should use the provided PE object, not create a new one
            assert extractor.pe is pe_object

    def test_pe_extractor_with_invalid_file(self, elf_binary_path, mock_logger):
        """Test PEExtractor initialization with non-PE file."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(elf_binary_path, mock_logger)

            # Should return None for pe when file is not a valid PE
            assert extractor.pe is None
            # Logger should have recorded an error
            assert mock_logger.error.called


class TestPEExtractorMethods:
    """Tests for PEExtractor helper methods."""

    def test_check_dotnet_true(self, pe_binary_path, mock_logger):
        """Test _check_dotnet returns True for .NET PE."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            # The test PE file is a .NET binary
            if extractor.pe is not None:
                result = extractor._check_dotnet()
                # d8637bdbcfc9112fcb1f0167b398e771 is a .NET binary
                assert result is True

    def test_check_dotnet_false(self, elf_binary_path, mock_logger):
        """Test _check_dotnet returns False for non-PE file."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(elf_binary_path, mock_logger)

            # Should return False when PE is None
            result = extractor._check_dotnet()
            assert result is False

    def test_is_signed_false(self, pe_binary_path, mock_logger):
        """Test _is_signed method."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            if extractor.pe is not None:
                result = extractor._is_signed()
                # Result depends on the actual binary
                assert isinstance(result, bool)

    def test_has_overlay(self, pe_binary_path, mock_logger):
        """Test _has_overlay method."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            if extractor.pe is not None:
                result = extractor._has_overlay()
                assert isinstance(result, bool)


class TestGeneratePEFileObject:
    """Tests for _generate_pefile_object method."""

    def test_generate_pefile_object_valid(self, pe_binary_path, mock_logger):
        """Test _generate_pefile_object with valid PE file."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            # The PE object should be created successfully
            assert extractor.pe is not None

    def test_generate_pefile_object_invalid(self, temp_text_file, mock_logger):
        """Test _generate_pefile_object with invalid file."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(temp_text_file, mock_logger)

            # Should return None for invalid PE
            assert extractor.pe is None


class TestGenerateDotNetFileObject:
    """Tests for _generate_dotnetfile_object method."""

    def test_generate_dotnetfile_object_valid(self, pe_binary_path, mock_logger):
        """Test _generate_dotnetfile_object with .NET PE file."""
        from redb.extractors.pe_extractors.pe_dotnet import PEDotNetExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEDotNetExtractor(pe_binary_path, mock_logger)

            if extractor.pe is not None and extractor._check_dotnet():
                dotnet, error = extractor._generate_dotnetfile_object()
                # Should create dotnet object for .NET PE
                assert dotnet is not None
                assert error is None

    def test_generate_dotnetfile_object_invalid(self, elf_binary_path, mock_logger):
        """Test _generate_dotnetfile_object with non-.NET file."""
        from redb.extractors.pe_extractors.pe_dotnet import PEDotNetExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEDotNetExtractor(elf_binary_path, mock_logger)

            dotnet, error = extractor._generate_dotnetfile_object()
            # Should return error for non-.NET file
            assert dotnet is None
            assert error is not None


class TestPEExtractorTag:
    """Tests for tag method in PE extractors."""

    def test_pe_features_tag(self, pe_binary_path, mock_logger):
        """Test that PEFeaturesExtractor returns correct tag."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor
        from redb.extractors.enum import Tag

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)
            assert extractor.tag() == Tag.PE_FEATURES.value

    def test_pe_import_tag(self, pe_binary_path, mock_logger):
        """Test that PEImportExtractor returns correct tag."""
        from redb.extractors.pe_extractors.pe_imports import PEImportExtractor
        from redb.extractors.enum import Tag

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEImportExtractor(pe_binary_path, mock_logger)
            assert extractor.tag() == Tag.PE_IMPORT.value

    def test_pe_section_tag(self, pe_binary_path, mock_logger):
        """Test that PESectionExtractor returns correct tag."""
        from redb.extractors.pe_extractors.pe_sections import PESectionExtractor
        from redb.extractors.enum import Tag

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PESectionExtractor(pe_binary_path, mock_logger)
            assert extractor.tag() == Tag.PE_SECTION.value


class TestPEExtractorClickHouseTable:
    """Tests for get_clickhouse_table method in PE extractors."""

    def test_pe_features_clickhouse_table(self, pe_binary_path, mock_logger):
        """Test that PEFeaturesExtractor returns correct ClickHouse table name."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)
            assert extractor.get_clickhouse_table() == "redb_pe_features"

    def test_pe_import_clickhouse_table(self, pe_binary_path, mock_logger):
        """Test that PEImportExtractor returns correct ClickHouse table name."""
        from redb.extractors.pe_extractors.pe_imports import PEImportExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEImportExtractor(pe_binary_path, mock_logger)
            assert extractor.get_clickhouse_table() == "redb_pe_imports"

    def test_pe_section_clickhouse_table(self, pe_binary_path, mock_logger):
        """Test that PESectionExtractor returns correct ClickHouse table name."""
        from redb.extractors.pe_extractors.pe_sections import PESectionExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PESectionExtractor(pe_binary_path, mock_logger)
            assert extractor.get_clickhouse_table() == "redb_pe_sections"


class TestPEExtractorPrepareExportData:
    """Tests for prepare_export_data method in PE extractors."""

    def test_pe_features_prepare_export_elasticsearch(self, pe_binary_path, mock_logger):
        """Test prepare_export_data for Elasticsearch."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            if extractor.pe is not None:
                # First extract
                extractor.extract()
                result = extractor.prepare_export_data("ElasticsearchExporter")
                # Should return the pe_features dataclass
                assert result is extractor.pe_features

    def test_pe_features_prepare_export_clickhouse(self, pe_binary_path, mock_logger):
        """Test prepare_export_data for ClickHouse."""
        from redb.extractors.pe_extractors.pe_features import PEFeaturesExtractor

        with patch('redb.settings.ELASTIC_BINARIES_COLLECTION', 'test'):
            extractor = PEFeaturesExtractor(pe_binary_path, mock_logger)

            if extractor.pe is not None:
                # First extract
                extractor.extract()
                result = extractor.prepare_export_data("ClickHouseExporter")

                # Should return tuple of (data, column_names, column_type_names)
                assert isinstance(result, tuple)
                assert len(result) == 3
                data, column_names, column_type_names = result
                assert isinstance(data, list)
                assert isinstance(column_names, list)
                assert isinstance(column_type_names, list)
                # Column names and types should match in length
                assert len(column_names) == len(column_type_names)