Solaris DHCP サービス開発ガイド

一般的な API 関数

このテンプレートでは、一般的な API 関数である status()version()mklocation() が使用されています。


例 4–1 general.c

* Copyright (c) 2000 by Sun Microsystems, Inc. /*
 * Copyright (c) 2000 by Sun Microsystems, Inc.
 * All rights reserved.
 */

#pragma	ident	"@(#)general.c	1.15	00/08/16 SMI"

/*
 * This module contains the public APIs for status, version, and mklocation.
 */

#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <dhcp_svc_public.h>

/*
 * This API function instructs the underlying datastore to return its 
 * general status. If the "location" argument is non-NULL, the function 
 * validates the location for the data store containers (is it formed 
 * correctly for the data store, and does it exist).
 */
int
status(const char *location)
{
	return (DSVC_UNSUPPORTED);
}

/*
 * Return the data store API version supported by this module.  This version
 * was implemented to support version 1 of the API.
 */
int
version(int *vp)
{
	*vp = DSVC_PUBLIC_VERSION;
	return (DSVC_SUCCESS);
}

/*
 * Create the datastore-specific "location" if it doesn't already exist.
 * Containers will ultimately be created there.
 */
int
mklocation(const char *location)
{
	return (DSVC_UNSUPPORTED);
}