Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
fe786448
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
fe786448
编写于
8月 21, 2001
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove krb.c.
上级
c89dc740
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
0 addition
and
119 deletion
+0
-119
contrib/pgcrypto/krb.c
contrib/pgcrypto/krb.c
+0
-119
未找到文件。
contrib/pgcrypto/krb.c
已删除
100644 → 0
浏览文件 @
c89dc740
/*
* krb.c
* Wrapper for Kerberos5 libdes SHA1/MD5.
*
* Copyright (c) 2000 Marko Kreen
* 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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.
*
*
* NOTES
* It is possible that this works with other SHA1/MD5
* implementations too.
*
* $Id: krb.c,v 1.4 2001/03/22 03:59:10 momjian Exp $
*/
#include "postgres.h"
#include "pgcrypto.h"
#include <md5.h>
#include <sha.h>
#ifndef MD5_DIGEST_LENGTH
#define MD5_DIGEST_LENGTH 16
#endif
#ifndef SHA1_DIGEST_LENGTH
#ifdef SHA1_RESULTLEN
#define SHA1_DIGEST_LENGTH SHA1_RESULTLEN
#else
#define SHA1_DIGEST_LENGTH 20
#endif
#endif
static
uint
pg_md5_len
(
pg_digest
*
h
);
static
uint8
*
pg_md5_digest
(
pg_digest
*
h
,
uint8
*
src
,
uint
len
,
uint8
*
buf
);
static
uint
pg_sha1_len
(
pg_digest
*
h
);
static
uint8
*
pg_sha1_digest
(
pg_digest
*
h
,
uint8
*
src
,
uint
len
,
uint8
*
buf
);
static
pg_digest
int_digest_list
[]
=
{
{
"md5"
,
pg_md5_len
,
pg_md5_digest
,
{
0
}},
{
"sha1"
,
pg_sha1_len
,
pg_sha1_digest
,
{
0
}},
{
NULL
,
NULL
,
NULL
,
{
0
}}
};
static
uint
pg_md5_len
(
pg_digest
*
h
)
{
return
MD5_DIGEST_LENGTH
;
}
static
uint8
*
pg_md5_digest
(
pg_digest
*
h
,
uint8
*
src
,
uint
len
,
uint8
*
buf
)
{
MD5_CTX
ctx
;
MD5Init
(
&
ctx
);
MD5Update
(
&
ctx
,
src
,
len
);
MD5Final
(
buf
,
&
ctx
);
return
buf
;
}
static
uint
pg_sha1_len
(
pg_digest
*
h
)
{
return
SHA1_DIGEST_LENGTH
;
}
static
uint8
*
pg_sha1_digest
(
pg_digest
*
h
,
uint8
*
src
,
uint
len
,
uint8
*
buf
)
{
SHA1_CTX
ctx
;
SHA1Init
(
&
ctx
);
SHA1Update
(
&
ctx
,
src
,
len
);
SHA1Final
(
buf
,
&
ctx
);
return
buf
;
}
pg_digest
*
pg_find_digest
(
pg_digest
*
h
,
char
*
name
)
{
pg_digest
*
p
;
for
(
p
=
int_digest_list
;
p
->
name
;
p
++
)
if
(
!
strcasecmp
(
p
->
name
,
name
))
return
p
;
return
NULL
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录