日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

TOMOYO Linux(undone)

發布時間:2024/10/12 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TOMOYO Linux(undone) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1. TOMOYO Introduction 2. TOMOYO Sourcecode Analysis

?

1. Introduction

TOMOYO是一款基于LSM Framework實現的LSMs(安全模塊)

Relevant Link:

http://lxr.free-electrons.com/source/Documentation/security/tomoyo.txt

?

2. TOMOYO Sourcecode Analysis

以網絡連接狀態函數(sys_connect)的監控(tomoyo_socket_connect)的監控log作為例子

/source/security/tomoyo/tomoyo.c

/** * tomoyo_socket_connect - Check permission for connect(). * * @sock: Pointer to "struct socket". * @addr: Pointer to "struct sockaddr". * @addr_len: Size of @addr. * * Returns 0 on success, negative value otherwise. */ static int tomoyo_socket_connect(struct socket *sock, struct sockaddr *addr, int addr_len) { return tomoyo_socket_connect_permission(sock, addr, addr_len); }

/source/security/tomoyo/network.c

/** * tomoyo_sock_family - Get socket's family. * * @sk: Pointer to "struct sock". * * Returns one of PF_INET, PF_INET6, PF_UNIX or 0. */ static u8 tomoyo_sock_family(struct sock *sk) { u8 family; if (tomoyo_kernel_service()) return 0; family = sk->sk_family; switch (family) { case PF_INET: case PF_INET6: case PF_UNIX: return family; default: return 0; } } /** * tomoyo_socket_connect_permission - Check permission for setting the remote address of a socket. * * @sock: Pointer to "struct socket". * @addr: Pointer to "struct sockaddr". * @addr_len: Size of @addr. * * Returns 0 on success, negative value otherwise. */ int tomoyo_socket_connect_permission(struct socket *sock, struct sockaddr *addr, int addr_len) { struct tomoyo_addr_info address; //Get socket's family.(family是鏈路層的概念) const u8 family = tomoyo_sock_family(sock->sk); //socket的類型(TCP、UDP...)(type是傳輸層的概念) const unsigned int type = sock->type; if (!family) return 0; address.protocol = type; switch (type) { case SOCK_DGRAM: case SOCK_RAW: address.operation = TOMOYO_NETWORK_SEND; break; case SOCK_STREAM: case SOCK_SEQPACKET: address.operation = TOMOYO_NETWORK_CONNECT; break; default: return 0; } if (family == PF_UNIX) return tomoyo_check_unix_address(addr, addr_len, &address); return tomoyo_check_inet_address(addr, addr_len, sock->sk->sk_protocol, &address); } /* Structure for holding socket address. */ struct tomoyo_addr_info { u8 protocol; u8 operation; struct tomoyo_inet_addr_info inet; struct tomoyo_unix_addr_info unix0; }; static int tomoyo_check_inet_address(const struct sockaddr *addr, const unsigned int addr_len, const u16 port, struct tomoyo_addr_info *address) { struct tomoyo_inet_addr_info *i = &address->inet; switch (addr->sa_family) { case AF_INET6: if (addr_len < SIN6_LEN_RFC2133) goto skip; i->is_ipv6 = true; i->address = (__be32 *)((struct sockaddr_in6 *) addr)->sin6_addr.s6_addr; i->port = ((struct sockaddr_in6 *) addr)->sin6_port; break; case AF_INET: if (addr_len < sizeof(struct sockaddr_in)) goto skip; i->is_ipv6 = false; i->address = (__be32 *) &((struct sockaddr_in *) addr)->sin_addr; i->port = ((struct sockaddr_in *) addr)->sin_port; break; default: goto skip; } if (address->protocol == SOCK_RAW) i->port = htons(port); return tomoyo_inet_entry(address); skip: return 0; }

Relevant Link:

?

Copyright (c) 2014 LittleHann All rights reserved

?

轉載于:https://www.cnblogs.com/LittleHann/p/4149509.html

總結

以上是生活随笔為你收集整理的TOMOYO Linux(undone)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91免费成人| 成人在线视频免费观看 | 成年人在线观看视频免费 | 91嫩草视频在线观看 | 97福利社 | 久久亚洲中文字幕无码 | 国产精品久久久久久久免费 | 一区二区三区视频在线观看免费 | 中文字幕在线免费看 | 国产一区综合 | 国产成人精品在线 | 乱视频在线观看 | 久久亚洲区 | 高跟91娇喘 | 少妇精品在线 | 日韩精品免费电影 | 天堂网av中文字幕 | 少妇av一区二区 | 毛片av网址 | 男女羞羞在线观看 | 香港一级淫片免费放 | 亚洲精品乱码久久久久 | av免费高清| 免费看裸体网站 | 色偷偷免费费视频在线 | 国产一级久久久久毛片精品 | 蜜臀在线一区二区三区 | 又紧又大又爽精品一区二区 | 人操人操 | 污夜影院| 欧美动态色图 | 国产伦精品一区二区三区视频女 | 麻豆精品 | 久久久久五月天 | 男女免费视频 | 亚洲天堂av中文字幕 | 亚洲精选在线观看 | 夜夜嗨av禁果av粉嫩av懂色av | 亚洲在线视频网站 | 国产精品99久久久久久久 | 欧美激情一区二区三区免费观看 | 女同性做受全过程动图 | 性视频网址 | 双性人妖互交localhost | 国内精品久久久 | 我的公把我弄高潮了视频 | 国产成人午夜精品无码区久久 | 亚洲在线视频免费观看 | 大学生一级一片全黄 | 国产一级免费 | 成人无高清96免费 | 九九九九九九精品 | 狠狠丁香| 日韩视频专区 | 欧美日韩高清 | 精品一区二区三区三区 | 色草在线 | 高清欧美精品xxxxx在线看 | 欧美做爰爽爽爽爽爽爽 | 三级在线观看 | 在线91观看 | 国产精品久久久久久人妻精品动漫 | 一区二区欧美视频 | 日韩视频在线免费观看 | 国产日韩一区二区三区 | 亚洲成人a√ | 久久久久区 | 亚洲第一视频网 | 国产黑人 | 动漫女被黄漫免费视频 | 亚洲色图婷婷 | 大又大粗又爽又黄少妇毛片 | 免费久久视频 | 一级大片免费看 | 98堂 最新网名 | 国产女人18水真多18精品一级做 | 精品国产专区 | 久草精品在线 | 蜜桃免费在线视频 | 精品人妻一区二区三区换脸明星 | av网址免费 | 亚洲精品中文字幕乱码三区 | 欧美做爰爽爽爽爽爽爽 | 国产精品免费久久久久 | 国产成人精品毛片 | 亚洲热在线 | 夜噜噜| 真人抽搐一进一出视频 | 欧美日韩精品一区 | 一区二区三区xxx | 熟女人妇 成熟妇女系列视频 | 在线免费观看一区二区三区 | 五十路中文字幕 | 精品无码av一区二区三区四区 | 中文字幕av网站 | 国产中文字幕在线播放 | 最新网址av| 中文视频在线观看 | 日日爽视频 |