getversion.c revision e3507739e4185bdb2394928eb6479e48f4e690a8
198913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project/*
298913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * getversion.c		- Get a file version on an ext2 file system
398913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project *
498913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * Copyright (C) 1993, 1994  Remy Card <card@masi.ibp.fr>
598913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project *                           Laboratoire MASI, Institut Blaise Pascal
698913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project *                           Universite Pierre et Marie Curie (Paris VI)
798913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project *
898913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * %Begin-Header%
998913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * This file may be redistributed under the terms of the GNU Library
1098913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * General Public License, version 2.
1198913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * %End-Header%
1298913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project */
1398913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project
1498913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project/*
1598913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * History:
1698913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project * 93/10/30	- Creation
1798913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project */
1898913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project
1998913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#include "config.h"
2098913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#if HAVE_ERRNO_H
2198913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#include <errno.h>
2298913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#endif
2398913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#include <sys/ioctl.h>
2498913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project
2598913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#include "e2p.h"
2698913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project
2798913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Projectint getversion (int fd, unsigned long * version)
2898913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project{
2998913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#if HAVE_EXT2_IOCTLS
3098913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	int	r, ver;
3198913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project
3298913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	r = ioctl (fd, EXT2_IOC_GETVERSION, &ver);
3398913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	*version = ver;
3498913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	return r;
3598913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#else /* ! HAVE_EXT2_IOCTLS */
3698913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	extern int errno;
3798913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	errno = EOPNOTSUPP;
3898913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project	return -1;
3998913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project#endif /* ! HAVE_EXT2_IOCTLS */
4098913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project}
4198913fed6520d8849fb2e246be943e04474aefaThe Android Open Source Project