2008-01-29 21:15:54 +03:00
# include <config.h>
2007-12-06 00:40:15 +03:00
2006-08-30 02:27:07 +04:00
# include <unistd.h>
# include <stdlib.h>
# include <stdio.h>
2007-11-13 01:16:25 +03:00
# include <string.h>
# include <errno.h>
2006-08-30 02:27:07 +04:00
# include "conf.h"
2011-04-25 02:25:10 +04:00
# include "memory.h"
2006-08-30 02:27:07 +04:00
2011-04-25 02:25:10 +04:00
int main ( int argc , char * * argv )
{
int ret , exit_code = EXIT_FAILURE ;
2006-08-30 02:27:07 +04:00
virConfPtr conf ;
int len = 10000 ;
2011-04-25 02:25:10 +04:00
char * buffer = NULL ;
2006-08-30 02:27:07 +04:00
if ( argc ! = 2 ) {
fprintf ( stderr , " Usage: %s conf_file \n " , argv [ 0 ] ) ;
2011-04-25 02:25:10 +04:00
goto cleanup ;
2006-08-30 02:27:07 +04:00
}
2011-04-25 02:25:10 +04:00
if ( VIR_ALLOC_N ( buffer , len ) < 0 ) {
fprintf ( stderr , " out of memory \n " ) ;
goto cleanup ;
}
2009-06-19 16:34:30 +04:00
conf = virConfReadFile ( argv [ 1 ] , 0 ) ;
2006-08-30 02:27:07 +04:00
if ( conf = = NULL ) {
fprintf ( stderr , " Failed to process %s \n " , argv [ 1 ] ) ;
2011-04-25 02:25:10 +04:00
goto cleanup ;
2006-08-30 02:27:07 +04:00
}
2011-04-25 02:25:10 +04:00
ret = virConfWriteMem ( buffer , & len , conf ) ;
2006-08-30 02:27:07 +04:00
if ( ret < 0 ) {
fprintf ( stderr , " Failed to serialize %s back \n " , argv [ 1 ] ) ;
2011-04-25 02:25:10 +04:00
goto cleanup ;
2006-08-30 02:27:07 +04:00
}
virConfFree ( conf ) ;
2007-11-13 01:16:25 +03:00
if ( fwrite ( buffer , 1 , len , stdout ) ! = len ) {
2008-04-10 20:54:54 +04:00
fprintf ( stderr , " Write failed: %s \n " , strerror ( errno ) ) ;
2011-04-25 02:25:10 +04:00
goto cleanup ;
2007-10-19 12:29:13 +04:00
}
2011-04-25 02:25:10 +04:00
exit_code = EXIT_SUCCESS ;
cleanup :
VIR_FREE ( buffer ) ;
return exit_code ;
2006-08-30 02:27:07 +04:00
}