From: Simon Wilkinson Date: Tue, 26 Apr 2011 19:48:32 +0000 (-0400) Subject: Irix: Add a simple osi_ReadRandom implementation X-Git-Tag: openafs-devel-1_7_1~545 X-Git-Url: https://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=f314dae7fdd06d80bd8d0f333fd8ace36708d28a Irix: Add a simple osi_ReadRandom implementation Add an implementation of osi_ReadRandom for Irix, which just panics (Irix has no source of cryptographically safe entropy in the kernel). Whilst hcrypto requires an implementation of osi_ReadRandom, nothing in the current kernel module will cause it to be called, so this panic should never be reached. Change-Id: I7aa52f445182f8e660586241304a7379770afcaa Reviewed-on: http://gerrit.openafs.org/4575 Tested-by: BuildBot Reviewed-by: Chaz Chandler Reviewed-by: Derrick Brashear --- diff --git a/src/afs/IRIX/osi_crypto.c b/src/afs/IRIX/osi_crypto.c new file mode 100644 index 0000000..ee35f92 --- /dev/null +++ b/src/afs/IRIX/osi_crypto.c @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2010 Your Filesystem Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "afs/param.h" + +#include "afs/sysincludes.h" +#include "afsincludes.h" + +int +osi_readRandom(void *data, afs_size_t len) { + osi_Panic("This platform doesn't have a cryptographic PRNG in the kernel"); + return 0; +} diff --git a/src/libafs/MakefileProto.IRIX.in b/src/libafs/MakefileProto.IRIX.in index 88f7aa9..310db13 100644 --- a/src/libafs/MakefileProto.IRIX.in +++ b/src/libafs/MakefileProto.IRIX.in @@ -16,6 +16,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ # OS specific object files: AFS_OS_OBJS = \ base64.o \ + osi_crypto.o \ osi_gcpags.o \ osi_groups.o \ osi_idbg.o \