paleofetch

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit ef6c42f063f60232bae0cef4c00be4c2ec240703
parent de145955a579e2cb001670eaa1b42190dd174231
Author: sam-barr <samfbarr@outlook.com>
Date:   Tue, 21 Apr 2020 21:30:56 -0500

I think the strings should be null terminated

Diffstat:
Mfetch.c | 42++++++++++--------------------------------
1 file changed, 10 insertions(+), 32 deletions(-)

diff --git a/fetch.c b/fetch.c @@ -11,8 +11,6 @@ #define DISTRO "Arch" #define BUF_SIZE 150 -#define BYTES_TO_MIB(B) ((B) / 1048576L) - #define FORMAT_STR \ "\x1b[1;36m -` \x1b[0m%s\n"\ "\x1b[1;36m .o+` \x1b[0m%s\n"\ @@ -34,8 +32,8 @@ "\x1b[1;36m`++:. `-/+/ %s\n"\ "\x1b[1;36m.` `/\x1b[0m\n\n" -// TODO: add null terminator to EVERYTHING // TODO: error checking +// TODO: Finish it struct utsname uname_info; struct sysinfo my_sysinfo; @@ -51,7 +49,7 @@ char *get_title() { title_length = strlen(hostname) + strlen(username) + 1; char *title = malloc(BUF_SIZE); - sprintf(title, "\e[1;36m%s\e[0m@\e[1;36m%s", hostname, username); + snprintf(title, BUF_SIZE, "\e[1;36m%s\e[0m@\e[1;36m%s", hostname, username); return title; } @@ -66,13 +64,13 @@ char *get_bar() { char *get_os() { char *os = malloc(BUF_SIZE); - sprintf(os, "%s %s %s", DISTRO, uname_info.sysname, uname_info.machine); + snprintf(os, BUF_SIZE, "%s %s %s", DISTRO, uname_info.sysname, uname_info.machine); return os; } char *get_kernel() { char *kernel = malloc(BUF_SIZE); - strcpy(kernel, uname_info.release); + strncpy(kernel, uname_info.release, BUF_SIZE); return kernel; } @@ -99,11 +97,11 @@ char *get_uptime() { char *uptime = malloc(BUF_SIZE); if(hours > 0) - sprintf(uptime, "%ld hours, %ld mins", hours, minutes); + snprintf(uptime, BUF_SIZE, "%ld hours, %ld mins", hours, minutes); else if(minutes > 0) - sprintf(uptime, "%ld mins", minutes); + snprintf(uptime, BUF_SIZE, "%ld mins", minutes); else - sprintf(uptime, "%ld secs", seconds); + snprintf(uptime, BUF_SIZE, "%ld secs", seconds); return uptime; } @@ -123,7 +121,7 @@ char *get_packages() { closedir(dirp); char *packages = malloc(BUF_SIZE); - sprintf(packages, "%d (pacman)", num_packages); + snprintf(packages, BUF_SIZE, "%d (pacman)", num_packages); return packages; } @@ -142,7 +140,7 @@ char *get_colors1() { sprintf(s, "\e[4%dm ", i); s += 8; } - strcpy(s, "\e[0m"); + snprintf(s, 5, "\e[0m"); return colors1; } @@ -155,7 +153,7 @@ char *get_colors2() { sprintf(s, "\e[48;5;%dm ", i); s += 12 + (i >= 10 ? 1 : 0); } - strcpy(s, "\e[0m"); + snprintf(s, 5, "\e[0m"); return colors2; } @@ -187,24 +185,4 @@ int main() { free(shell); free(colors1); free(colors2); - - //printf("\e[40m \e[0m\n"); - //printf("\e[41m \e[0m\n"); - //printf("\e[42m \e[0m\n"); - //printf("\e[43m \e[0m\n"); - //printf("\e[44m \e[0m\n"); - //printf("\e[45m \e[0m\n"); - //printf("\e[46m \e[0m\n"); - //printf("\e[47m \e[0m\n"); - //printf("\e[48;5;8m \e[0m\n"); - //printf("\e[48;5;9m \e[0m\n"); - //printf("\e[48;5;10m \e[0m\n"); - //printf("\e[48;5;11m \e[0m\n"); - //printf("\e[48;5;12m \e[0m\n"); - //printf("\e[48;5;13m \e[0m\n"); - //printf("\e[48;5;14m \e[0m\n"); - //printf("\e[48;5;15m \e[0m\n"); - //printf("%d\n", BYTES_TO_MIB(my_sysinfo.totalram)); - //printf("%ld\n", (my_sysinfo.totalram)); - //printf("%ld\n", (my_sysinfo.freeram + my_sysinfo.bufferram)); }