• 编译 ioftpd v7.7.3


    今天编译了下 ioftpd ioFTPD-v7.7.3-src,遇到几个问题。
    //z 2014-05-05 22:04:40 L.240' 6920 BG57IV3@BYH T3695602389.K.F519279140 [T2,L60,R1,V5]
    1. 需要 openssl
    下载并且编译 openssl-1.0.1g

    2. 遇到一处包含头文件 <ms/applink.c>
    改为 <openssl/applink.c>

    3. 无法找到 tcl.h
    详细见代码下 Tcl.txt;作者做了说明。
    Error 1 fatal error C1083: Cannot open include file: 'tcl.h': No such file or directory
    3.1 似乎还需要 tcl 。
    下载了 tcl8.6.1-src
    3.2 然后无法找到 tcl85tg.lib
    使用 tcl86t.lib

    3.3 Error 2 error LNK2019: unresolved external symbol _Tcl_RegisterHandleLockFunctions referenced in function _Tcl_ModuleInitTcl.objioFTPD-v7
    直接注释了,不知道有无什么影响。
    3.3.1 看了眼文件夹,发现有tcl.txt,里面有详细的说明。有文档务必认真阅读文档呀。。。

    //z 2014-05-06 00:40:59 L.239'83941 BG57IV3@BYH T190870396 .K.F519279140 [T5,L65,R1,V9]
    3.3.2 仍有以下问题
    Bad return type: void Tcl_RegisterHandleLockFunctions(void (*AcquireLock)(void),
     void (*ReleaseLock)(void))
    3.3.2.1 作者所用的tcl85t.dll确有 Tcl_RegisterHandleLockFunctions 

    08-27-2010, 02:07 PM
    //z 2014-05-05 22:35:30 L.240' 5070 BG57IV3@BYH T278698003 .K.F519279140 [T3,L61,R1,V6]
    Hmm, it just occurred to me that starting with v7.1.0 the TCL libraries differ from the official TCL v8.5.8 sources because of the addition of the Tcl_RegisterHandleLockFunctions command. That was added so the TCL library can share the ioFTPD lock around process/socket creation. I've included a copy of the TCL sources I'm building from in the link at the top.

    49) Tcl_RegisterHandleLockFunctions(AcquireHandleLock, ReleaseHandleLock) has
        been added as a new exported C function to the standard TCL dlls.  This
        is the first time the TCL code has been modified for use by ioFTPD.
        Previously only the makefiles and command line options used for compilation
        were touched.  In order to fix the race condition with new sockets being
        automatically inheritable by child processes it is necessary to share a
        lock with the rest of the server and thus some way to communicate what to
        share is required.  This function just registers 2 callback functions to
        call before and after socket and/or process creation.
    v7.1.0 Release Notes:
    
    找了几个版本的tcl dll,里面均没有该函数:Tcl_RegisterHandleLockFunctions1) Files in System:   Changed : ioFTPD.[exe,pdb] - Version 7.1.0.0.   Changed : tcl85t.[dll,pdb] - Version 8.5.2.8 (tcl version 8.5.8)   Changed : ioFTPD.ini - summary of changes by section...
    


    The OpenSSL library is unchanged, you should be able to use anybody's compiled copy or build it yourself. We are currently using 1.0.0 but 1.0.1 is out there.


    3.4 找到一处作者的说明,使用 nmake -nologo -f makefile.vc release OPTS=threads 编译 tcl ,使用这个重新编译下看看。
    nmake -nologo -f makefile.vc release OPTS=threads


    //z 2014-05-06 09:43:03 L.239'51417 BG57IV3@XCL T4210892314.K.F3811017215[T2,L59,R1,V16]
    3.5 找不到 ioFTPD.ico ,将其路径更改如下。
    IDI_ICON1               ICON                    ".\..\src\ioFTPD.ico"

    4. sum
    //z 2014-05-06 01:09:04 L.239'82256 BG57IV3@BYH T335328246 .K.F519279140 [T6,L113,R1,V11]
    focus:注释掉 Tcl_RegisterHandleLockFunctions ,然后挑选感兴趣的看看。


    @IS2120#CNBLOGS.T2169364049[T1,L65,R1,V259]:备忘
    $ € ₤ ₭ ₪ ₩ ₮ ₦ ₱ ฿ ₡ ₫ ﷼ ¥ ﷼ ₫ ₡ ฿ ₱ ₦ ₮ ₩ ₪ ₭ ₤ € $
  • 相关阅读:
    kali linux之wireshark/tcpdump
    kali linux之netcat
    kali 插耳机没声音
    php代码审计10审计会话认证漏洞
    php代码审计9审计反序列化漏洞
    php代码审计8审计文件上传漏洞
    Python opencv 形态学
    图像与轮廓检测-轮廓检测
    Python操作Excel,openpyxl模块,画折线图
    Pthon强制删除非空文件夹
  • 原文地址:https://www.cnblogs.com/IS2120/p/6745663.html
Copyright © 2020-2023  润新知