Ifana Mahbub

48 papers B 1C 2Journal 11Unranked 34
YearRankTypeTitle / Venue / Authors
2026 conf
RWS
Azin Hojjati, Sakib Reza, Ifana Mahbub
2026 conf
RWS
Sakib Reza, Azin Hojjati, Ifana Mahbub
2025 conf
RWS
Abu Hena Murshed, Karthik Kakaraparty, Russell C. Reid, Ifana Mahbub
2025 conf
RWS
Sakib Reza, Sanjay Das, Shamik Kundu, Kanad Basu, Ifana Mahbub
2025 conf
RWS
Adnan Basir Patwary, Ifana Mahbub
2024 conf
MWSCAS
Rafsan Mahin, Ifana Mahbub
2024 conf
MWSCAS
Pallav Kumar Sah, Ifana Mahbub
2024 conf
RWS
Nabanita Saha, Sunanda Roy, Ifana Mahbub
2024 conf
MWSCAS
Adnan Basir Patwary, Ifana Mahbub
2024 conf
MWSCAS
Sakib Reza, Ifana Mahbub
2024 conf
ISVLSI
Sakib Reza, Sanjay Das, Shamik Kundu, Kanad Basu, Ifana Mahbub
2024 conf
MWSCAS
Sakib Reza, Ifana Mahbub
2024 conf
MWSCAS
Pallav Kumar Sah, Erik Pineda Alvarez, Karthik Kakaraparty, Russell C. Reid, Ifana Mahbub
2023 J jnl
IEEE Access
Nishat Tarannum Tasneem, Dipon K. Biswas, Sakib Reza, Ifana Mahbub
2023 J jnl
Sensors
Venkata Deepa Kota, Himanshu Sharma, Mark V. Albert, Ifana Mahbub, Gayatri Mehta, Kamesh Namuduri
2023 B conf
PIMRC
Kasun Prabhath, Xiang Sun, Sudharman K. Jayaweera, Daniel Manu, Karthik Kakaraparty, Pallav Kumar Sah, Ifana Mahbub, Jaya Sravani Mandapaka, Sudesna Das Rochi, Mahdin Meraz, Kamesh Namuduri
2022 J jnl
J. Signal Process. Syst.
Deepa Kota, Nishat Tarannum Tasneem, Karthik Kakaraparty, Ifana Mahbub, Gayatri Mehta, Kamesh Namuduri
2022 conf
RWS
Adnan Basir Patwary, Ifana Mahbub
2022 conf
IEEE SENSORS
Venkata Deepa Kota, Salvatore Andrea Pullano, Antonino S. Fiorillo, Ifana Mahbub
2022 conf
IEEE SENSORS
Karthik Kakaraparty, Gretchen S. Hyer, Erik A. Pineda, Russell C. Reid, Ifana Mahbub
2021 conf
RWS
Dipon K. Biswas, Ifana Mahbub
2021 conf
MWSCAS
Deepa Kota, Ifana Mahbub
2021 C conf
ISCAS
Nishat Tarannum Tasneem, Dipon K. Biswas, Ifana Mahbub, Pashupati R. Adhikari, Russell C. Reid
2020 conf
IEEE SENSORS
Nishat Tarannum Tasneem, Deepa Kota, Ifana Mahbub, Gayatri Mehta, Kamesh Namuduri, Ari Cedars
2020 conf
MWSCAS
Nishat Tarannum Tasneem, Ifana Mahbub
2020 conf
RWS
Dipon K. Biswas, Jose H. A. Martinez, Jacob Daniels, Abhijeet Bendapudi, Ifana Mahbub
2020 conf
MeMeA
Salvatore A. Pullano, Marta Greco, Antonino S. Fiorillo, Ifana Mahbub, Nishat Tarannum Tasneem, Samira Shamsir, Syed K. Islam
2020 C conf
ISCAS
Nishat Tarannum Tasneem, Dipon K. Biswas, Pashupati R. Adhikari, Russell C. Reid, Ifana Mahbub
2020 conf
MWSCAS
Nishat Tarannum Tasneem, Ifana Mahbub
2020 J jnl
Sensors
Tonoy Chowdhury, Nandika D'Souza, Yee Hsien Ho, Narendra Dahotre, Ifana Mahbub
2020 J jnl
Sensors
Dipon K. Biswas, Melissa Sinclair, Tien Le, Salvatore A. Pullano, Antonino S. Fiorillo, Ifana Mahbub
2019 conf
RWS
Nishat Tarannum Tasneem, Dipon K. Biswas, Ifana Mahbub
2019 J jnl
Sensors
Salvatore A. Pullano, Nishat Tarannum Tasneem, Ifana Mahbub, Samira Shamsir, Marta Greco, Syed K. Islam, Antonino S. Fiorillo
2019 conf
MWSCAS
Nishat Tarannum Tasneem, Ifana Mahbub
2019 J jnl
IET Circuits Devices Syst.
Ifana Mahbub, Samira Shamsir, Salvatore A. Pullano, Antonino S. Fiorillo, Syed K. Islam
2019 conf
MeMeA
Hanfeng Wang, Samira Shamsir, Ifana Mahbub, Syed K. Islam, Allen Legassey, Raja Hari Gudlavelleti, Fotios Papadimitrakopoulos, Faquir C. Jain
2019 J jnl
IET Circuits Devices Syst.
Ifana Mahbub, Samira Shamsir, Salvatore A. Pullano, Syed K. Islam
2018 conf
MeMeA
Salvatore A. Pullano, Maria Giovanna Bianco, Francesco Ursini, Caterina Bruno, Antonino S. Fiorillo, Ifana Mahbub, Nishat Tarannum Tasneem
2018 J jnl
Sensors
Salvatore A. Pullano, Costantino Davide Critello, Ifana Mahbub, Nishat Tarannum Tasneem, Samira Shamsir, Syed Kamrul Islam, Marta Greco, Antonino S. Fiorillo
2018 conf
I2MTC
Samira Shamsir, Shahram Hatefi Hesari, Syed K. Islam, Ifana Mahbub, Salvatore A. Pullano, Antonino S. Fiorillo
2017 conf
MWSCAS
Ifana Mahbub, Samira Shamsir, Syed K. Islam, Salvatore A. Pullano, Antonino S. Fiorillo
2017 conf
MWSCAS
Samira Shamsir, Ifana Mahbub, Syed K. Islam, Arifur Rahman
2017 conf
MWSCAS
Syed K. Islam, Ifana Mahbub, Samira Shamsir
2017 J jnl
Sensors
Salvatore A. Pullano, Ifana Mahbub, Syed K. Islam, Antonino S. Fiorillo
2016 conf
MeMeA
Ifana Mahbub, Syed Kamrul Islam
2016 conf
MeMeA
Ifana Mahbub, Hanfeng Wang, Syed Kamrul Islam, Salvatore A. Pullano, Antonino S. Fiorillo
2016 conf
IEEE SENSORS
Salvatore A. Pullano, Antonino S. Fiorillo, Ifana Mahbub, Syed K. Islam, Mark S. Gaylord, Vichien Lorch
2015 J jnl
IEEE Trans. Circuits Syst. II Express Briefs
Liang Zuo, Syed Kamrul Islam, Ifana Mahbub, Farhan Quaiyum
redb/utils/wrapper_run_sort_files.py
← Index redb/utils/wrapper_run_sort_files.py python
import os
import subprocess
import multiprocessing
import logging
from concurrent.futures import ThreadPoolExecutor
import signal

# Variables (replace these with actual values)
src_root_folder_path = "/mnt/samples/consilience/malware/vx-bazaar-expanded/"
dst_root_folder_path = "/mnt/samples/consilience/malware/_sorted_samples/vx-bazaar/"
log_folder_path = "/mnt/samples/consilience/malware/ops-logs/"
folder_names = ["Bazaar.2022.01", "Bazaar.2022.02", "Bazaar.2022.03", "Bazaar.2022.04"]  # List of folder names
script_name = "sort_files_by_type.py"
dry_run = True  # Set to True for testing without execution


# Ensure the log folder exists
os.makedirs(log_folder_path, exist_ok=True)

# Configure logging
main_log_name = "20241229-main_script.log"
main_log_file = os.path.join(log_folder_path, main_log_name)
if not os.path.exists(main_log_file):
    open(main_log_file, 'a').close()  # Create the log file if it doesn't exist
# main_log_file = os.path.join(log_folder_path, main_log_name)
# try:
#     with open(main_log_file, 'a') as f:
#         print(f"Successfully created/opened log file at: {main_log_file}")
#     # Verify the file exists
#     if os.path.exists(main_log_file):
#         print(f"Confirmed log file exists at: {main_log_file}")
#         print(f"File size: {os.path.getsize(main_log_file)} bytes")
# except Exception as e:
#     print(f"Error with log file: {e}")

# Configure logging
logging.basicConfig(
    filename=main_log_file,
    level=logging.INFO,
    format="%(asctime)s - %(levelname)s - %(message)s",
    force=True,
    filemode='a'
)

logging.info("Logging initialization test message")

# Add logging handler to flush immediately
class FlushableFileHandler(logging.FileHandler):
    def emit(self, record):
        super().emit(record)
        self.flush()

for handler in logging.getLogger().handlers:
    if isinstance(handler, logging.FileHandler):
        handler.flush()

# Global flag for graceful termination
terminate_flag = False

def signal_handler(signum, frame):
    global terminate_flag
    terminate_flag = True
    logging.warning("Termination signal received. Attempting to shut down gracefully.")

# Register signal handler
signal.signal(signal.SIGINT, signal_handler)
signal.signal(signal.SIGTERM, signal_handler)

# Define the worker function
def process_folder(folder):
    global terminate_flag
    if terminate_flag:
        logging.warning(f"Skipping folder {folder} due to termination signal.")
        return

    try:
        # Extract the word and date fields from the folder name
        word, year, month = folder.split('.')

        # Construct source, destination, and log paths
        src_folder = os.path.join(src_root_folder_path, folder)
        dst_folder = os.path.join(dst_root_folder_path, folder)
        log_file = os.path.join(
            log_folder_path, f"20241229-SORT_FILES-bazaar_{year}.{month}.output.log"
        )

        if not os.path.exists(log_file):
            open(log_file, 'a').close()  # Create the log file if it doesn't exist

        # Build the command
        command = ["python3", script_name, src_folder, dst_folder]

        if dry_run:
            logging.info(f"Dry run: Would execute: {command}, log: {log_file}")
            print(f"Dry run: Would execute: {command}, log: {log_file}")
        else:
            logging.info(f"Starting task for folder: {folder}")
            with open(log_file, "w") as log:
                subprocess.run(command, stdout=log, stderr=subprocess.STDOUT, check=True)
            logging.info(f"Task completed for folder: {folder}")

    except subprocess.CalledProcessError as e:
        logging.error(f"Subprocess failed for folder {folder} with return code {e.returncode}: {e}")
        print(f"Subprocess failed for folder {folder}: {e}")
    except Exception as e:
        logging.error(f"Error while processing folder {folder}: {e}")
        print(f"Error while processing folder {folder}: {e}")

# Determine the number of processors
num_processors = multiprocessing.cpu_count()

try:
    # Process folders using ThreadPoolExecutor
    with ThreadPoolExecutor(max_workers=num_processors-1) as executor:
        executor.map(process_folder, folder_names)

except Exception as e:
    logging.critical(f"Critical error in the main execution: {e}")
    print(f"Critical error: {e}")

logging.info("All tasks completed.")
print("All tasks completed.")