Есть функция добавляющая в массв указателей на структуры новую ссылку на элемент:
int AddSpoolUnit(spool *p){
spool *new;
new=(spool *)malloc(sizeof(spool));
if(new==NULL){return NULL;}
p=new;
}
Но при выполнении следующего кода она вылетает с SIGSEGV
if(!AddSpoolUnit(p->SpoolArray[p->nFd]))
return -1;
p->SpoolArray[p->nFd]->in.sin_addr.s_addr=inet_addr(tmp);