小编use*_*589的帖子

将 BIO 保存到 char*(来自 SMIME_write_CMS)

我想将一个 BIO 保存(管道/复制)到一个字符数组中。当我知道它的大小时,它可以工作,否则就不行。

例如,我可以使用这个将我的 char* 的内容存储到一个 BIO 中

const unsigned char* data = ...    
myBio = BIO_new_mem_buf((void*)data, strlen(data));
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用 SMIME_write_CMS 将 BIO(我之前创建的)作为输出时,它不起作用。

const int SIZE = 50000;
unsigned char *temp = malloc(SIZE);
memset(temp, 0, SIZE);

out = BIO_new_mem_buf((void*)temp, SIZE);
if (!out) {
    NSLog(@"Couldn't create new file!");
    assert(false);
}


int finished = SMIME_write_CMS(out, cms, in, flags);
if (!finished) {
    NSLog(@"SMIME write CMS didn't succeed!");
    assert(false);
}

printf("cms encrypted: %s\n", temp);

NSLog(@"All succeeded!");
Run Code Online (Sandbox Code Playgroud)

OpenSSL 参考使用带有 BIO 的直接文件输出。这有效,但我不能在objective-c中使用 BIO_new_file() ... :-/

out = …
Run Code Online (Sandbox Code Playgroud)

iphone openssl smime ios

3
推荐指数
1
解决办法
2371
查看次数

Google-api-go-client:列出带有标签的消息并获取标头字段

我想列出带有特定标签的消息。所以我使用了谷歌Go Quickstart 代码并将范围设置为 gmail.MailGoogleComScope。

使用此代码获取带有标签“INBOX”的所有邮件列表可以正常工作

    mes, err := srv.Users.Messages.List(user).LabelIds("INBOX").Do()
Run Code Online (Sandbox Code Playgroud)

但是当我用“测试”替换“收件箱”时,出现错误:

无法检索消息。googleapi:错误 400:无效标签:TEST,invalidArgument 退出状态 1

并且有一个名为 TEST 的标签。我究竟做错了什么?

google-api go gmail-api google-api-go-client

2
推荐指数
1
解决办法
813
查看次数

标签 统计

gmail-api ×1

go ×1

google-api ×1

google-api-go-client ×1

ios ×1

iphone ×1

openssl ×1

smime ×1