发现 liboauth 的一个 bug:FUSE 下 oauth_gen_nonce() 结果异常

原创 2012年03月29日 21:26:37

转载时请注明出处和作者联系方式:http://blog.csdn.net/mimepp
作者联系方式:YU TAO <yut616 at sohu dot com>

关键字: linux,fuse, liboauth,oauth_gen_nonce,oauth_sign_hmac_sha1

这里记录一下遇到的一个 liboauth 结果异常的情况。

例子代码:

http://www.kuaipan.com.cn/file/id_12177787062321391.htm

Error log:
=========================
open_src/fuse_oauth$ make
Compiling hello.c
Building  hello
test/fuse_oauth$ mkdir /tmp/aaa
test/fuse_oauth$ ./hello /tmp/aaa/
test/fuse_oauth$ cat /tmp/aaa/hello
5555555555555555555555
test/fuse_oauth$
test/fuse_oauth$ cat /tmp/aaa/hello
5555555555555555555555
test/fuse_oauth$
test/fuse_oauth$
=========================

but if I remark line 138 (hello.c), which is a call in main function, the result will be correct:
    //oauth_nonce = oauth_gen_nonce();
=========================
test/fuse_oauth$ fusermount -u /tmp/aaa
test/fuse_oauth$ ./hello /tmp/aaa/
test/fuse_oauth$ cat /tmp/aaa/hello
e3BJGRSUFWBXeRF
test/fuse_oauth$
test/fuse_oauth$
test/fuse_oauth$
test/fuse_oauth$ cat /tmp/aaa/hello
EFJuwuxEvWNlJvO4f5nxBTg
=========================

PC: ubuntu 11.10
liboauth-0.9.4
liboauth-dev is installed by apt-get.
It will depends on libcurl4-nss-dev.
I do not compile liboauth by myself.

It seems liboauth is using openssl:
src/config.h:
#define HAVE_OPENSSL_HMAC_H 1
and the USE_NSS is not defined.
Then it will enter line 538:
src/oauth.c
=========================
#  include <openssl/rand.h>
#  define MY_RAND RAND_bytes
#  define MY_SRAND ;
=========================

BTW, auth_signature is NULL too.
http://openapi.kuaipan.cn/1/metadata/kuaipan/UML?oauth_consumer_key=xc8D2NfL9c53vkrP&oauth_nonce=aaaaaaaaaaaaaaa&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1332589513&oauth_token=32a7d5efb0d5442e8e32c6d7518e8239&oauth_version=1.0&oauth_signature=%28null%29

It seems nonce and signature are related to openssl.

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

复现一个DataGridView仅显示一行且不显式抛异常的Bug

本文复现了由空的SqlDataReader读取数据所引起的DataGridView仅显示一行的Bug

极其简单的一个JSP小功能+空指针异常Bug解析(内容更新)

说在前面 由于是从昨晚才开始更新的博客,要到工作室锁门的时间就匆忙上传了,上传完之后发现还有一些没弄完的,本来想今天更新一下内容,在登录的时候脑抽,新注册了一个CSDN用户,结果原来用QQ绑定的用...

一个关于android WindowManangerService layer 异常的bug

一个关于android WindowManangerService layer 异常的bug 最近在工作中,解决的一个android 原生的问题,分享给大家: 手机在MTBF 测试的时候,有一个简...

提高gen_server call 一个小技巧

刚刚突然收到一条建议 一般我们写 gen_server handle call会这么写 handle_call(call, _From, State) -> Result = compu...

Cognos函数(十九) - rank异常:GEN-ERR-0016 “rank”函数在已使用该函数的上下文中不受支持。

在使用rank函数时,由于有2种方法,详情见之前的博客: Cognos函数(十七) - 排名函数:rank

通过View.post()获取View的宽高引发的两个问题:1post的Runnable何时被执行,2为何View需要layout两次;以及发现Android的一个小bug

前言 在Android里,获取View宽高的时机是个老生常谈的话题了。众所周知,在Oncreate里直接调用View.getWidth或者View.getMeasuredWidth返回都是0。所以获...

发现live555中一个小bug(2)

在《发现live555中一个小bug》一文中所修改的代码并不起作用。 经测试,RTPSource的Socket检测不到网络出错的情况。而RTCPInstance中的socket可以检测到,所以可以利...
  • nkmnkm
  • nkmnkm
  • 2011-11-23 16:32
  • 7627

今天发现的一个VC6.0在私有变量声明时的BUG

如果有人说,VC的宏能够影响到类成员变量的属性,你信吗?反正是我信了! 今天在修改一个程序的时候,我在类A的外部使用指向类B的指针,居然能够访问到类B的受保护成员变量!!!!!这让我感到非常奇怪,于是...

20120909-发现串口调试助手V2.2的一个BUG

串口调试助手当数据位设置为6时,接收的字符乱了。相同软件,数据位设置为8、7时无此问题。 作为对比又测试了“串口调试精灵V1.023版”和“串口调试工具V1.0-耳朵软件”数据位设置为6,无此问题 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)