/* * OpenMRCP - Open Source Media Resource Control Protocol Stack * Copyright (C) 2007, Cepstral LLC * * Version: MPL 1.1 * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * * Author(s): * Arsen Chaloyan * * Contributor(s): * */ #include #include #include "apt_unique_id.h" /** Generate unique identifier (hex string) */ APT_DECLARE(apt_bool_t) apt_unique_id_generate(apt_unique_id *id, apr_size_t length, apr_pool_t *pool) { char *hex_str; apr_size_t i; apr_size_t count; apr_uuid_t uuid; apr_uuid_get(&uuid); hex_str = apr_palloc(pool,length+1); count = length / 2; if(count > sizeof(uuid)) { count = sizeof(uuid); } for(i=0; ihex_str = hex_str; id->length = length; return TRUE; }