2010-12-26 18:02:14 +01:00
|
|
|
/*
|
|
|
|
* version.c --- Return the version of the ext2 library
|
|
|
|
*
|
|
|
|
* Copyright (C) 1997 Theodore Ts'o.
|
|
|
|
*
|
|
|
|
* %Begin-Header%
|
|
|
|
* This file may be redistributed under the terms of the GNU Library
|
|
|
|
* General Public License, version 2.
|
|
|
|
* %End-Header%
|
|
|
|
*/
|
|
|
|
|
2011-11-05 19:50:49 +01:00
|
|
|
#include "config.h"
|
2010-12-26 18:02:14 +01:00
|
|
|
#if HAVE_UNISTD_H
|
|
|
|
#include <unistd.h>
|
|
|
|
#endif
|
|
|
|
#include <string.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <ctype.h>
|
|
|
|
|
|
|
|
#include "ext2_fs.h"
|
|
|
|
#include "ext2fs.h"
|
|
|
|
|
2012-02-13 21:26:22 +01:00
|
|
|
#include "version.h"
|
2011-11-05 19:50:49 +01:00
|
|
|
|
2012-02-13 21:26:22 +01:00
|
|
|
static const char *lib_version = E2FSPROGS_VERSION;
|
|
|
|
static const char *lib_date = E2FSPROGS_DATE;
|
2010-12-26 18:02:14 +01:00
|
|
|
|
|
|
|
int ext2fs_parse_version_string(const char *ver_string)
|
|
|
|
{
|
|
|
|
const char *cp;
|
|
|
|
int version = 0, dot_count = 0;
|
|
|
|
|
|
|
|
for (cp = ver_string; *cp; cp++) {
|
|
|
|
if (*cp == '.') {
|
|
|
|
if (dot_count++)
|
|
|
|
break;
|
|
|
|
else
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
if (!isdigit((int)*cp))
|
|
|
|
break;
|
|
|
|
version = (version * 10) + (*cp - '0');
|
|
|
|
}
|
|
|
|
return version;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int ext2fs_get_library_version(const char **ver_string,
|
|
|
|
const char **date_string)
|
|
|
|
{
|
|
|
|
if (ver_string)
|
|
|
|
*ver_string = lib_version;
|
|
|
|
if (date_string)
|
|
|
|
*date_string = lib_date;
|
|
|
|
|
|
|
|
return ext2fs_parse_version_string(lib_version);
|
|
|
|
}
|