Home | History | Annotate | Download | only in mech
      1 #pragma ident	"%Z%%M%	%I%	%E% SMI"
      2 
      3 /*
      4  * Copyright 1993 by OpenVision Technologies, Inc.
      5  *
      6  * Permission to use, copy, modify, distribute, and sell this software
      7  * and its documentation for any purpose is hereby granted without fee,
      8  * provided that the above copyright notice appears in all copies and
      9  * that both that copyright notice and this permission notice appear in
     10  * supporting documentation, and that the name of OpenVision not be used
     11  * in advertising or publicity pertaining to distribution of the software
     12  * without specific, written prior permission. OpenVision makes no
     13  * representations about the suitability of this software for any
     14  * purpose.  It is provided "as is" without express or implied warranty.
     15  *
     16  * OPENVISION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
     17  * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
     18  * EVENT SHALL OPENVISION BE LIABLE FOR ANY SPECIAL, INDIRECT OR
     19  * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
     20  * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
     21  * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
     22  * PERFORMANCE OF THIS SOFTWARE.
     23  */
     24 
     25 /*
     26  * $Id: util_buffer.c 11001 1998-10-30 02:56:35Z marc $
     27  */
     28 
     29 #include "gssapiP_generic.h"
     30 #include <string.h>
     31 
     32 /* return nonzero on success, 0 on failure
     33    make sure that buffer is consistent (release'able) when this
     34    function exits, no matter what the exit value */
     35 
     36 int g_make_string_buffer(str, buffer)
     37      const char *str;
     38      gss_buffer_t buffer;
     39 {
     40    buffer->length = strlen(str);
     41 
     42    if ((buffer->value = (void *) xmalloc(buffer->length + 1)) == NULL) {
     43       buffer->length = 0;
     44       return(0);
     45    }
     46 
     47    strcpy(buffer->value, str);
     48 
     49    return(1);
     50 }
     51