小编ojb*_*ass的帖子

在Subversion中,修改历史文件的最佳实践是什么?

让我们说我有文件

helloworld.c
helloworld.m
Run Code Online (Sandbox Code Playgroud)

15个编辑前,有人在helloworld.c中泄露了memroy,并设法将它变成了几个分支.我想在它设法进入的所有分支上纠正历史上的那个版本.

还原文件并尝试重新检入文件的净效果是什么?显然从那以后的14个变化我不想失去?

更新:我确信有人遇到过这个问题,我想知道他们找到了什么对他们有用的原因.

我是否认为管理分支和中继的方式是密集的,我必须在它存在的每个上下文中访问该文件?

svn version-control

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

在范围内缩进代码是否常见?

对于生成的代码,我可以选择缩进或不缩进大括号,仅用于容纳范围内的变量.目前它没有在这个级别缩进,我想知道我是否要通过缩进来暗示嵌套结构?常见的做法是什么?

/* loop through the total number of letter a rules  */
for (a = 0; a < (number_a_rules - 1); a++) 
{
        /* loop through secondary position rules */           
        {
        int a2end = arulestableend[2];
        for (int a2 = arulestablestart[2]; a2 < a2end; a2++) 
        {
                  /* stuff */
        }
        }
} /* end for a 0 to numberarules -1 */
Run Code Online (Sandbox Code Playgroud)

/* loop through the total number of letter a rules  */
for (a = 0; a < (number_a_rules - …
Run Code Online (Sandbox Code Playgroud)

c code-formatting

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

qsort是否要求进行一致的比较,还是可以将其用于改组?

更新:请在不好的想法下提交.生活中没有任何免费的东西,这肯定是证据.一个简单的想法变坏了.然而,这绝对是值得学习的东西.

懒惰的编程挑战.如果我传递一个50-50为qsort的比较函数返回true或false的函数,我认为我可以有效地取消编写3行代码的结构数组.

int main ( int argc, char **argv)
{
    srand( time(NULL) );  /* 1 */
    ...
    /* qsort(....) */     /* 2 */
}
Run Code Online (Sandbox Code Playgroud)

...

int comp_nums(const int *num1, const int *num2)
{
    float frand = 
          (float) (rand()) / ((float) (RAND_MAX+1.0));  /* 3 */

    if (frand >= 0.5f)
         return GREATER_THAN;
    return LESS_THAN;
}
Run Code Online (Sandbox Code Playgroud)

我需要寻找的任何陷阱?是否可以通过交换更少的线路,或者这对于3条非平凡的线路来说是最干净的?

c sorting random

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

为什么安全程序如此难以开发(对我来说)?

社区维基问题

每次我处理涉及密码或保护数据的项目时,我都会陷入混乱的API和问题.我在开发安全应用程序方面没有太多正式的培训,但我还没有接受过数据库,GUI和构建过程的正式培训.许多其他编程领域感觉更直观.

安全只是一个比其他许多更复杂的领域吗?我倾向于认为事实并非如此.安装后的表面和系统是否比其他安全性更不成熟?我倾向于认为这些系统成熟的压力很大.在UNIX上,"可信赖的环境"是常态,直到90年代的某个地方.UNIX刚刚在这个领域扎根吗?

技术变化很快.自从我上学以来,计算机世界变得更加分散和批判.作为一个事后,安全被拖延了吗?任何新技术都有希望吗?你是否像我一样受苦?

security

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

为什么我不能用DBD :: DB2断开我的数据库句柄?

我的perl脚本很慢但有效.我正在考虑抛弃它并构建一个具有适当绑定等的真正的DB2应用程序; 然而,与此同时,我希望这可以作为占位符.

我查看了这个文档并提到:

$dbh->disconnect();
Run Code Online (Sandbox Code Playgroud)

但是我无法使用它,因为它会抛出此错误.

无法在./ProgramTree.pl第119行通过包"dbh"(可能加载"dbh"?)找到对象方法"disconnect".

我知道我的临时应用程序正在泄漏并且正在增长,因为它以递归方式打开数据库句柄.我错过了什么基本的东西?

perl dbi disconnect

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

优化加密/解密脚本的建议?[现在在Sourceforge上]

UPDATE2:

感谢您的投入.我已经实现了算法,可以在SourceForge上下载.这是我的第一个开源项目,所以请怜悯.

更新:

我不确定我是否足够清楚,或者每个人都对此有所了解,了解贝壳消耗的方式#!输入类型.一本很好看的书是Advanced Unix Programming.如此处所示,调用popen并提供其标准输入就足够了.

原始问题:

我们的脚本在高度分散的环境中运行,有许多用户 由于许多原因,使用权限隐藏它们是有问题的.

由于第一行可用于为脚本指定"解释器",因此初始行可用于定义解密器

#!/bin/decryptandrun
*(&(*S&DF(*SD(F*SDJKFHSKJDFHLKJHASDJHALSKJD
SDASDJKAHSDUAS(DA(S*D&(ASDAKLSDHASD*(&A*SD&AS
ASD(*A&SD(*&AS(D*&AS(*D&A(SD&*(A*S&D(A*&DS
Run Code Online (Sandbox Code Playgroud)

鉴于我可以编写脚本来加密并放置适当的头,我想要解密脚本(它本身可能有一个解释器行,如#!/ bin/perl在它的顶部),而不做任何愚蠢的写出来到一个临时文件.我发现了一些愚蠢的商业产品.我认为这可以在几个小时内完成.是否有一个众所周知的方法用管道而不是编码系统调用?我在考虑使用execvp但是更换当前进程或创建子进程是否更好?

c unix encryption scripting

0
推荐指数
1
解决办法
530
查看次数

是什么限制了c中嵌套循环的数量?

编辑:对于那些寻找问题答案的人,如标准所述,标准限制了编译时嵌套循环的数量.在运行时,这是一个不同的问题,因为唯一的限制是程序段的大小.

解决:我在构建过程中看得太早.c文件进一步应用于它的预处理.关闭后续步骤.

我对使用perl从应用生成发音规则的语言生成的c代码有疑问.在本质上,输入是一个庞大的发音规则例外字典.代码充满了gotos,直到其中一个异常字典达到23K规则为止.

代码基本上是不可读的但我已经设法在删除看似第6200个嵌套循环之后编译c代码:

for (dictionionary1=seed1;dicitonary1<limit1;dictionary1++)
{
    for (dictionionary2=seed2;dicitonary2<limit2;dictionary2++)
    {
           /* .... */
        for (dictionionary6199=seed6199;dicitonary6199<limit6199;dictionary6199++)
        {
               /* two hundred more removed adding one makes it not compile */

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

gcc和xlC都能够处理这些,但是aCC 3.73(在H11.23 PA RISC上)正在发挥作用.

Compiling /home/ojblass/exception_dictionary_a.c...
Loading the kernel...
Pid 18324 killed due to text modification or page I/O error
/bin/ksh: 28004 Bus error(coredump)
*** Error exit code 138
Run Code Online (Sandbox Code Playgroud)

我找到了这个链接并尝试了许多建议的修复但没有成功.

由于遗留原因,我必须编译为32位(它使用32位库,我没有64位对应的).

maxdsiz = 256 MB (x10000000) tried up to 4 GB
maxssiz = 16 MB …
Run Code Online (Sandbox Code Playgroud)

c loops

0
推荐指数
1
解决办法
5319
查看次数

是否可以维护43页查询?

我一直认为SQL编译器会破坏,但显然nesing几乎可以无限.这个代码是立即被破坏还是有一些希望,这样的东西可以起作用?

这个查询并不属于我,所以我不能发布它...但是,让我们假装它是这个:

[SELECT /*+ NOPARALLEL bypass_recursive_check */ 
SP_ALIAS_190, 
((CASE SP_ALIAS_191
WHEN 1
THEN 'PROVIDER::ALL_PROV::'
WHEN 0]
Run Code Online (Sandbox Code Playgroud)

sql maintainability

0
推荐指数
2
解决办法
1146
查看次数

C++ - 将数组传递给方法

这是一个类似于我定义的函数:

void Function( BYTE *data );
Run Code Online (Sandbox Code Playgroud)

我想做的是这样的事情:

Function( new BYTE { 0x00, 0x00 } );
Run Code Online (Sandbox Code Playgroud)

c++ arrays argument-passing

0
推荐指数
2
解决办法
2681
查看次数

有哪些选项可用于在负载平衡服务器之间同步密码?

当你telnet到某个盒子时,我们有几台你可以使用的UNIX机器.passwd文件不在共享安装上(我不确定安装它们的安全性如何).最终结果是,如果您在一个框中更改密码,当您登录到第二个框时,它将告诉您密码无效.这对最终用户没有意义,因为他们在两个实例中都输入了telnet servername.任何实用的经验,建议或指示,以帮助解决这种情况?

环境包含

  • AIX 5.3,5.2,5.1,4.3
  • HP 11 11.11 11.23 11.23I
  • 太阳10
  • Linux的

更新:

我正在考虑在除了一个盒子之外的所有盒子上禁用passwd.然后,passwd可以是对控制密码服务器的远程调用,或者明确告诉用户要去哪台机器以更改其密码.

更新:

如果任何人都有使用Centrify的经验,那么IBM产品确实看起来很有趣吗?

思考?

unix authentication passwords load-balancing

-1
推荐指数
1
解决办法
725
查看次数