/*
 * Copyright (C) 2004-2007 Atmel Corporation
 *
 * This file is subject to the terms and conditions of the GNU Lesser General
 * Public License.  See the file "COPYING.LIB" in the main directory of this
 * archive for more details.
 */
#include <errno.h>
#include <unistd.h>
#include <sys/syscall.h>

libc_hidden_proto(brk)

void *__curbrk attribute_hidden = 0;

int brk (void *addr)
{
       void *newbrk;

       newbrk = (void *)INLINE_SYSCALL(brk, 1, addr);

       __curbrk = newbrk;

       if (newbrk < addr) {
               __set_errno (ENOMEM);
               return -1;
       }

       return 0;
}
libc_hidden_def(brk)