diff --git a/src/common/protocol.c b/src/common/protocol.c new file mode 100644 --- /dev/null +++ b/src/common/protocol.c @@ -0,0 +1,50 @@ +/* + Copyright 2009 Nathan Phillip Brink + + This file is a part of DistRen. + + DistRen is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + DistRen is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with DistRen. If not, see . +*/ + +#include "protocol.h" + +#include + +#define DISTREN_REQUEST_MAGIC (0x32423434) + +int distren_request_new(struct distren_request **req, uint32_t len, enum distren_request_type type) +{ + struct distren_request *newreq; + + newreq = malloc(sizeof(struct distren_request)); + if(!newreq) + { + (*req) = NULL; + return 1; + } + + newreq->magic = DISTREN_REQUEST_MAGIC; + newreq->len = len; + newreq->enumsize = sizeof(enum distren_request_type); + newreq->type = type; + + (*req) = newreq; + return 0; +} + +int distren_request_free(struct distren_request *req) +{ + free(req); + return 0; +}