Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xiph.Org
Icecast-Server
Commits
6e16b1cc
Commit
6e16b1cc
authored
Feb 02, 2003
by
Ed "oddsock" Zaleski
Browse files
new configuration entries for yp listing
svn path=/trunk/icecast/; revision=4308
parent
dd177a72
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/config.c
View file @
6e16b1cc
...
...
@@ -4,7 +4,11 @@
#include
<libxml/xmlmemory.h>
#include
<libxml/parser.h>
#include
"config.h"
#include
"refbuf.h"
#include
"client.h"
#include
"logging.h"
#define CATMODULE "CONFIG"
#define CONFIG_DEFAULT_LOCATION "Earth"
#define CONFIG_DEFAULT_ADMIN "icemaster@localhost"
#define CONFIG_DEFAULT_CLIENT_LIMIT 256
...
...
@@ -28,6 +32,7 @@
#define CONFIG_DEFAULT_USER NULL
#define CONFIG_DEFAULT_GROUP NULL
#define CONFIG_MASTER_UPDATE_INTERVAL 120
#define CONFIG_YP_URL_TIMEOUT 10
#ifndef _WIN32
#define CONFIG_DEFAULT_BASE_DIR "/usr/local/icecast"
...
...
@@ -185,6 +190,7 @@ static void _set_defaults(void)
_configuration
.
chuid
=
CONFIG_DEFAULT_CHUID
;
_configuration
.
user
=
CONFIG_DEFAULT_USER
;
_configuration
.
group
=
CONFIG_DEFAULT_GROUP
;
_configuration
.
num_yp_directories
=
0
;
}
static
void
_parse_root
(
xmlDocPtr
doc
,
xmlNodePtr
node
)
...
...
@@ -298,11 +304,21 @@ static void _parse_directory(xmlDocPtr doc, xmlNodePtr node)
{
char
*
tmp
;
if
(
_configuration
.
num_yp_directories
>=
MAX_YP_DIRECTORIES
)
{
ERROR0
(
"Maximum number of yp directories exceeded!"
);
return
;
}
do
{
if
(
node
==
NULL
)
break
;
if
(
xmlIsBlankNode
(
node
))
continue
;
if
(
strcmp
(
node
->
name
,
"server"
)
==
0
)
{
if
(
strcmp
(
node
->
name
,
"yp-url"
)
==
0
)
{
if
(
_configuration
.
yp_url
[
_configuration
.
num_yp_directories
])
xmlFree
(
_configuration
.
yp_url
[
_configuration
.
num_yp_directories
]);
_configuration
.
yp_url
[
_configuration
.
num_yp_directories
]
=
(
char
*
)
xmlNodeListGetString
(
doc
,
node
->
xmlChildrenNode
,
1
);
}
else
if
(
strcmp
(
node
->
name
,
"yp-url-timeout"
)
==
0
)
{
tmp
=
(
char
*
)
xmlNodeListGetString
(
doc
,
node
->
xmlChildrenNode
,
1
);
_configuration
.
yp_url_timeout
[
_configuration
.
num_yp_directories
]
=
atoi
(
tmp
);
}
else
if
(
strcmp
(
node
->
name
,
"server"
)
==
0
)
{
_add_server
(
doc
,
node
->
xmlChildrenNode
);
}
else
if
(
strcmp
(
node
->
name
,
"touch-freq"
)
==
0
)
{
tmp
=
(
char
*
)
xmlNodeListGetString
(
doc
,
node
->
xmlChildrenNode
,
1
);
...
...
@@ -310,6 +326,7 @@ static void _parse_directory(xmlDocPtr doc, xmlNodePtr node)
if
(
tmp
)
xmlFree
(
tmp
);
}
}
while
((
node
=
node
->
next
));
_configuration
.
num_yp_directories
++
;
}
static
void
_parse_paths
(
xmlDocPtr
doc
,
xmlNodePtr
node
)
...
...
src/config.h
View file @
6e16b1cc
...
...
@@ -6,6 +6,8 @@
#define CONFIG_EBADROOT -3
#define CONFIG_EPARSE -4
#define MAX_YP_DIRECTORIES 25
typedef
struct
ice_config_dir_tag
{
char
*
host
;
...
...
@@ -53,6 +55,9 @@ typedef struct ice_config_tag
int
chuid
;
char
*
user
;
char
*
group
;
char
*
yp_url
[
MAX_YP_DIRECTORIES
];
int
yp_url_timeout
[
MAX_YP_DIRECTORIES
];
int
num_yp_directories
;
}
ice_config_t
;
void
config_initialize
(
void
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment