/*
 * $Id: ossiRelease.c,v 1.2 2008/05/08 20:14:03 rdobbs PMCC4_3_1B $
 */

/*-----------------------------------------------------------------------------
 * ossiRelease.c -
 *
 * This string will be embedded into the executable and will track the
 * release.  The embedded string may be displayed using the following:
 *
 *      strings <filename> | grep \$Rel
 *
 * Copyright (C) 2002-2008  One Stop Systems, Inc.
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   This program is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 * For further information, contact via email: support@onestopsystems.com
 * One Stop Systems, Inc.  Escondido, California  U.S.A.
 *
 *-----------------------------------------------------------------------------
 * RCS info:
 * RCS revision: $Revision: 1.2 $
 * Last changed on $Date: 2008/05/08 20:14:03 $
 * Changed by $Author: rdobbs $
 *-----------------------------------------------------------------------------
 */


char pmcc4_OSSI_release[] = "$Release: PMCC4_3_1B,  Copyright (c) 2008 One Stop Systems$";

/***  End-of-File  ***/
