- 主题:.PASSWDS的变化
刚刚从FB 转换过来的 .PASSWDS 文件,在被导入内存之后,
再./miscd flush 一下 发现.PASSWDS 文件中有好多老id 被 局部的写错了,userid 这部分都变成了空,
哪位大侠知道是为什么? 是那段代码 造成了 userid 被挂空了?
--
FROM 222.28.73.*
怎么没有人 回呢?
呵呵,我自己顶一个
【 在 hanxuema (汗血马) 的大作中提到: 】
: 刚刚从FB 转换过来的 .PASSWDS 文件,在被导入内存之后,
: 再./miscd flush 一下 发现.PASSWDS 文件中有好多老id 被 局部的写错了,userid 这部分都变成了空,
: 哪位大侠知道是为什么? 是那段代码 造成了 userid 被挂空了?
--
FROM 222.28.73.*
我根据老系统的userec ,修改了convpasswd.c中的olduserec结构,
然后根据kbs的userec修改 了在smthbbs 1.2.2下的userec,
然后在smthbbs的 总体结构下运行convpasswd ,生成的相应的passwds 文件...
【 在 pig2532 (猪猪猪) 的大作中提到: 】
: 检查一下转换程序里定义的新旧userec结构体是不是都与需要的符合了?
--
FROM 222.28.73.*
是的
有问题?
【 在 pig2532 (猪猪猪) 的大作中提到: 】
: 你把smth1.2的userec改成跟kbs一样了?
--
FROM 222.28.73.*
比如什么地方 会有不兼容的呢?
难道smth 中的 OS_64BIT 定义过,所以userlevel的位置是在
time_t lastlogin;
time_t stay;
之后的
这样生成的passwds 结构应该是userlevel在后,
而在kbs下的passwds 结构userlevel在前...
是不是这个问题呢?
我晚上试试...
除了这个还会有什么吗?
【 在 pig2532 (猪猪猪) 的大作中提到: 】
: 我也说不准 也许会在别的地方有不兼容
--
FROM 222.28.73.*
就算是这个原因,
userlevel 和lastlogin 等错位了,
系统在 到达 哪一步的 时候 会把 userid 给写错了的呢??
【 在 hanxuema (汗血马) 的大作中提到: 】
: 比如什么地方 会有不兼容的呢?
: 难道smth 中的 OS_64BIT 定义过,所以userlevel的位置是在
: time_t lastlogin;
: ...................
--
FROM 222.28.73.*
不会啊,并非所有的id都错啊,
flush后的 passwds文件中,出错的几个id 都是前面的比较多,后面id的大部分是没有错的...
为什么呢...
所以我想知道kbs 在把passwds 导入内存的uidshm->passwd[] 里面后,作过哪些修改...
我看了fillucache 函数里 有作过,不知道 还有没有的...
【 在 pig2532 (猪猪猪) 的大作中提到: 】
: 有一个错位了 后面的不就全部都错位了嘛
--
FROM 222.28.73.*
我想知道kbs在 把passwds导入内存后,
哪个地方对uidshm->passwd[].userid 进行过修改...
【 在 atppp (Big Mouse) 的大作中提到: 】
: 看你说了半天总也说不明白你到底在干嘛
: 你不如临时给pig2532一个shell帐号让他去看看算了。。。
--
FROM 222.28.73.*