Version 0.3.0 from FTP
[asterisk/asterisk.git] / chanvars.c
1 #include <asterisk/chanvars.h>
2 #include <malloc.h>
3 #include <string.h>
4
5 struct ast_var_t *ast_var_assign(char *name,char *value) {
6         int i;
7         struct ast_var_t *var;
8         
9         var=malloc(sizeof(struct ast_var_t));
10         
11         i=strlen(value);
12         var->value=malloc(i+1);
13         strncpy(var->value,value,i);
14         var->value[i]='\0';
15         
16         i=strlen(name);
17         var->name=malloc(i+1);
18         strncpy(var->name,name,i); 
19         var->name[i]='\0';
20         return(var);
21 }       
22         
23 void ast_var_delete(struct ast_var_t *var) {
24         if (var!=NULL) {
25                 if (var->name!=NULL) free(var->name);
26                 if (var->value!=NULL) free(var->value);
27                 free(var);
28         }
29 }
30
31 char *ast_var_name(struct ast_var_t *var) {
32         return(var->name);
33 }
34
35 char *ast_var_value(struct ast_var_t *var) {
36         return(var->value);
37 }
38
39