Compare commits

..

3 Commits

11 changed files with 34 additions and 66 deletions

View File

@@ -146,20 +146,14 @@ increment_version() {
update_source_version() { update_source_version() {
local NEW_VERSION="$1" local NEW_VERSION="$1"
print_status "Updating version strings in source code..." print_status "Updating version constant in source code..."
# Replace hardcoded version strings in src/otp.c with the current git tag # Update OTP_VERSION constant in src/main.h
if [ -f "src/otp.c" ]; then if [ -f "src/main.h" ]; then
# Update main menu version sed -i "s/#define OTP_VERSION \"v[0-9]\+\.[0-9]\+\.[0-9]\+\"/#define OTP_VERSION \"$NEW_VERSION\"/g" src/main.h
sed -i "s/OTP v[0-9]\+\.[0-9]\+\.[0-9]\+/OTP $NEW_VERSION/g" src/otp.c print_success "Updated OTP_VERSION in src/main.h to $NEW_VERSION"
# Update ASCII output version
sed -i "s/Version: v[0-9]\+\.[0-9]\+\.[0-9]\+/Version: $NEW_VERSION/g" src/otp.c
# Update usage/help text version
sed -i "s/Implementation v[0-9]\+\.[0-9]\+\.[0-9]\+/Implementation $NEW_VERSION/g" src/otp.c
print_success "Updated version strings in src/otp.c to $NEW_VERSION"
else else
print_warning "src/otp.c not found - skipping version string updates" print_warning "src/main.h not found - skipping version update"
fi fi
} }
@@ -289,6 +283,10 @@ build_project() {
fi fi
fi fi
# Clean up object files after successful build
print_status "Cleaning up object files..."
rm -f src/*.o
# Create Gitea release with binaries # Create Gitea release with binaries
if [ -f "$HOME/.gitea_token" ]; then if [ -f "$HOME/.gitea_token" ]; then
create_gitea_release "$NEW_VERSION" create_gitea_release "$NEW_VERSION"

View File

@@ -5,7 +5,7 @@
#include <stdio.h> #include <stdio.h>
#include <time.h> #include <time.h>
#include <unistd.h> #include <unistd.h>
#include "otp.h" #include "main.h"
#define PROGRESS_UPDATE_INTERVAL (64 * 1024 * 1024) // 64MB intervals #define PROGRESS_UPDATE_INTERVAL (64 * 1024 * 1024) // 64MB intervals
@@ -198,7 +198,7 @@ int generate_ascii_armor(const char* chksum, uint64_t offset, const unsigned cha
strcpy(*ascii_output, "-----BEGIN OTP MESSAGE-----\n"); strcpy(*ascii_output, "-----BEGIN OTP MESSAGE-----\n");
char temp_line[256]; char temp_line[256];
snprintf(temp_line, sizeof(temp_line), "Version: v0.3.16\n"); snprintf(temp_line, sizeof(temp_line), "Version: %s\n", OTP_VERSION);
strcat(*ascii_output, temp_line); strcat(*ascii_output, temp_line);
snprintf(temp_line, sizeof(temp_line), "Pad-ChkSum: %s\n", chksum); snprintf(temp_line, sizeof(temp_line), "Pad-ChkSum: %s\n", chksum);

View File

@@ -16,7 +16,7 @@
#include <fcntl.h> #include <fcntl.h>
#include <math.h> #include <math.h>
#include "nostr_chacha20.h" #include "nostr_chacha20.h"
#include "otp.h" #include "main.h"
// In-place pad entropy addition using Chacha20 or direct XOR // In-place pad entropy addition using Chacha20 or direct XOR

View File

@@ -15,7 +15,7 @@
#include <termios.h> #include <termios.h>
#include <fcntl.h> #include <fcntl.h>
#include <math.h> #include <math.h>
#include "otp.h" #include "main.h"
int main(int argc, char* argv[]) { int main(int argc, char* argv[]) {
// Initialize terminal dimensions first // Initialize terminal dimensions first
@@ -241,7 +241,7 @@ int command_line_mode(int argc, char* argv[]) {
} }
void print_usage(const char* program_name) { void print_usage(const char* program_name) {
printf("OTP Cipher - One Time Pad Implementation v0.3.16\n"); printf("OTP Cipher - One Time Pad Implementation %s\n", OTP_VERSION);
printf("Built for testing entropy system\n"); printf("Built for testing entropy system\n");
printf("Usage:\n"); printf("Usage:\n");
printf(" %s - Interactive mode\n", program_name); printf(" %s - Interactive mode\n", program_name);

View File

@@ -1,12 +1,12 @@
#ifndef OTP_H #ifndef MAIN_H
#define OTP_H #define MAIN_H
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// OTP CIPHER - FUNCTION PROTOTYPES HEADER // OTP CIPHER - MAIN HEADER FILE
// One Time Pad Implementation v0.2.109 // One Time Pad Implementation
// //
// This header file contains all function prototypes extracted from otp.c // This header file contains all function prototypes and type definitions
// Organized by functional categories for better maintainability // for the OTP Cipher project
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
#include <stdio.h> #include <stdio.h>
@@ -22,6 +22,9 @@
#include <string.h> #include <string.h>
#include <ctype.h> #include <ctype.h>
// Version - Updated automatically by build.sh
#define OTP_VERSION "v0.3.24"
// Constants // Constants
#define MAX_INPUT_SIZE 4096 #define MAX_INPUT_SIZE 4096
#define MAX_LINE_LENGTH 1024 #define MAX_LINE_LENGTH 1024
@@ -335,4 +338,4 @@ char* select_pad_interactive(const char* title, const char* prompt, pad_filter_t
// Help and usage display // Help and usage display
void print_usage(const char* program_name); void print_usage(const char* program_name);
#endif // OTP_H #endif // MAIN_H

View File

@@ -1,35 +0,0 @@
#define _POSIX_C_SOURCE 200809L
#define _DEFAULT_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/statvfs.h>
#include <sys/ioctl.h>
#include <dirent.h>
#include <time.h>
#include <ctype.h>
#include <termios.h>
#include <fcntl.h>
#include <math.h>
#include "nostr_chacha20.h"
#include "otp.h"
#define MAX_INPUT_SIZE 4096
#define MAX_LINE_LENGTH 1024
#define MAX_HASH_LENGTH 65
#define PROGRESS_UPDATE_INTERVAL (64 * 1024 * 1024) // 64MB intervals
#define DEFAULT_PADS_DIR "pads"
#define FILES_DIR "files"
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// GLOBAL VARIABLES
///////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
char current_pads_dir[512] = DEFAULT_PADS_DIR;

View File

@@ -16,7 +16,7 @@
#include <fcntl.h> #include <fcntl.h>
#include <math.h> #include <math.h>
#include <errno.h> #include <errno.h>
#include "otp.h" #include "main.h"
// Extracted pad management functions from otp.c // Extracted pad management functions from otp.c

View File

@@ -1,6 +1,6 @@
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
#include "otp.h" #include "main.h"
// Global state variables // Global state variables
static char current_pads_dir[512] = DEFAULT_PADS_DIR; static char current_pads_dir[512] = DEFAULT_PADS_DIR;

View File

@@ -17,7 +17,7 @@
#include <math.h> #include <math.h>
#include <errno.h> #include <errno.h>
#include "nostr_chacha20.h" #include "nostr_chacha20.h"
#include "otp.h" #include "main.h"
// Basic TrueRNG entropy collection function // Basic TrueRNG entropy collection function
int collect_truerng_entropy(unsigned char* entropy_buffer, size_t target_bytes, size_t* collected_bytes, int display_progress) { int collect_truerng_entropy(unsigned char* entropy_buffer, size_t target_bytes, size_t* collected_bytes, int display_progress) {

View File

@@ -15,7 +15,7 @@
#include <termios.h> #include <termios.h>
#include <fcntl.h> #include <fcntl.h>
#include <math.h> #include <math.h>
#include "otp.h" #include "main.h"
// Initialize terminal dimensions // Initialize terminal dimensions
void init_terminal_dimensions(void) { void init_terminal_dimensions(void) {
@@ -120,7 +120,9 @@ int interactive_mode(void) {
void show_main_menu(void) { void show_main_menu(void) {
printf("\n"); printf("\n");
print_centered_header("Main Menu - OTP v0.3.16", 0); char header[64];
snprintf(header, sizeof(header), "Main Menu - OTP %s", OTP_VERSION);
print_centered_header(header, 0);
printf("\n"); printf("\n");
printf(" \033[4mT\033[0mext encrypt\n"); //TEXT ENCRYPT printf(" \033[4mT\033[0mext encrypt\n"); //TEXT ENCRYPT

View File

@@ -15,7 +15,7 @@
#include <termios.h> #include <termios.h>
#include <fcntl.h> #include <fcntl.h>
#include <math.h> #include <math.h>
#include "otp.h" #include "main.h"
// Global variables for preferences // Global variables for preferences
static char default_pad_path[1024] = ""; static char default_pad_path[1024] = "";