You need to allocate memory for *t
before you can use it.
void init_rbtree(rbtree **t) {
*t=malloc(sizeof(rbtree));
if (*t==NULL) {
//handle error
}
else {
(*t)->root = NULL;
node *n = malloc(sizeof(node));
if(n != NULL){
n->color = BLACK;
(*t)->nil = n;
}
}
}