#include "../includes/philo_header.h" t_all *structalloc_and_bzero(void) { t_all *all; all = ft_calloc(sizeof(t_all), 1); all->number_of_philosophers = -1; all->time_to_die = -1; all->time_to_eat = -1; all->time_to_sleep = -1; all->number_of_times_each_philosopher_must_eat = -1; return (all); } size_t ft_strlcpy(char *dst, const char *src, size_t size) { unsigned int i; unsigned int count; count = 0; if (!dst && !src) return (0); while (src[count] != '\0') { ++count; } i = 0; if (size > 0) { while (src[i] != '\0' && i < (size - 1) && src[i]) { dst[i] = src[i]; ++i; } dst[i] = '\0'; } return (count); } size_t ft_strlcat(char *dst, const char *src, size_t size) { unsigned int i; unsigned int len; len = 0; if (!dst && !src) return (0); len = ft_strlen(dst); i = 0; if (size < len) return (ft_strlen((char *)src) + size); if (size) { while (src[i] && len + 1 < size) dst[len++] = src[i++]; dst[len] = '\0'; } while (src[i]) { i++; len++; } return (len); } int ft_strlen(char *str) { int i; i = 0; while (str[i]) i++; return (i); } char *sem_set_name(char *str, int i) { char *temp_nbr; char *returnstr; temp_nbr = ft_itoa(i); returnstr = ft_strjoin(str, temp_nbr); free(temp_nbr); return (returnstr); } sem_t *reopen_sem(const char *name, int value) { sem_unlink(name); return (sem_open(name, O_RDWR | O_CREAT, S_IRWXU, value)); }