說說ASNMP ACE 包的不足

2021-04-22 17:21:34 字數 778 閱讀 9085

眾所周知的基於c++實現的ace框架,雖然設計得很好,可有很多不足,尤其是裡面的那個asnmp包……

不止是沒做完,即使是做完的部分也有很多問題……

這不,遇到過好幾個bug,為此折騰了好多天……(因為實在捨不得放棄ace……嘿嘿~)

比如,1.ipaddress型別變數傳遞問題。

2.datetime型別未實現的問題。

3.trapv1的乙個什麼字段無法獲取的問題。

4.無法處理trapv2的問題……(這個好像是沒做完,不算bug)

datetime型別未實現,自己仿照其他型別實現乙個即可。

麻煩在於問題1:

原來好像與octetstr型別同樣處理的,不過這樣好像可以傳值,但是型別就分不清了。

因為原來vb的set_value..之類的方法似乎沒有針對ipaddress型別的過載。

如果加上的話,就可以設為ipaddress型別,可這樣的話,值卻傳不過來了……

費了好半天時間……終於找到問題所在了……

關鍵就在於wpdu::convert_vb_to_smival(...)的那裡對ipaddress型別的處理。

如前面所說, 在這個方法裡,ipaddress和octetstr是同等對待的。

可實際上,ipaddress型別是無法直接放到octetstr裡的,因為我發現他提供了個to_octet()方法。

修改下,將ipaddress用to_octet方法傳值即可。:)

好像即使在目前最新的5.6.7版ace也存在以上問題。

所以呢,建議大家用asnmp之前三思。^o^

說說js閉包

js閉包涉及到作用域,js的作用域有兩種,全域性變數和區域性變數,全家變數就是在函式外宣告的,區域性變數是在函式內宣告的,函式內部可以直接讀取全域性變數 但是函式外部自然無法讀取函式內的區域性變數 函式內部宣告變數的時候,要用var不然就是個全域性變數 有時候需要得到函式內的區域性變數 濫用閉包會可...

知方可補不足 說說吧!timestamp有什麼用?

最近開發了乙個公安機關的分布式系統,在系統中要求若干個人同時可以對資料庫進行讀寫操作。這時出現了一些聯想問題 1 當多於1人的使用者對同一條記錄進行寫操作時,先寫入的使用者的資料必定會被後寫入的使用者的資料override掉,這個問題如何解決?2 希望看比某一條記錄更新的 在這條記錄修改後,才進行修...

說說TLS協議裡的wireshark抓包內容(一)

我們看到第63號 客戶端向伺服器傳送 client hello 資料報 我們觀察內容 先看到 content type 內容的格式 其實就是說這是握手協議中的 client hello tls中有四種協議 握手協議 22 這裡就是22可以看到 警告協議 21 密碼變更協議 20 這協議沒有出現在我們...