.Xauthority 文件的内部格式是什么?
What is the internal format of .Xauthority file?
嗯,正题。
我搜索了很多,但不幸的是,一无所获。有没有描述这种格式的文件?或者需要从 xauth 源文件中提取结构?
可能不完全是您要查找的内容,但仅针对格式设置给出答案。
.Xauthority 是一个结构数组:
typedef struct xauth {
unsigned short family;
unsigned short address_length;
char *address;
unsigned short number_length;
char *number;
unsigned short name_length;
char *name;
unsigned short data_length;
char *data;
} Xauth;
你可能仍然需要能够解码每个条目——如果没有别的,通过源码苦读:Xauth.h
例如:
$ od -xc --endian=big .Xauthority | more
0000000 0100 0007 6d61 7869 6d75 7300 0130 0012
001 [=11=] [=11=] \a m a x i m u s [=11=] 001 0 [=11=] 022
0000020 4d49 542d 4d41 4749 432d 434f 4f4b 4945
M I T - M A G I C - C O O K I E
0000040 2d31 0010 c0ac 9e9c ee82 ef59 f406 b7f9
- 1 [=11=] 020 300 254 236 234 356 202 357 Y 364 006 267 371
0000060 b745 254e 0100 0007 6d61 7869 6d75 7300
267 E % N 001 [=11=] [=11=] \a m a x i m u s [=11=]
第一个短是0x100表示家族
下一个short是0x0007表示地址的长度
接下来的7个字节是地址:maximus
下一个短的是0001,座位号的长度
下一个字节是30,ascii 0,座位号
下一个short是0x0012,十进制18,名字的长度
接下来的18个字节是名字:MIT-MAGIC-COOKIE-1
下一个short是0x0010,十进制16,数据的长度
接下来的 16 个字节是数据:0xc0ac 到 0x254e。
然后重新开始。
这里有一些文档供您参考。
Cookie-based 访问(.Xauthority 文件)遵循 Inter-Client Exchange (ICE) Protocol and implemented in Inter-Client Exchange Library,您将在附录会话中找到更多格式详细信息。
例如,Appendix B 描述了常见的 MIT-MAGIC-COOKIE-1
身份验证方法。
嗯,正题。
我搜索了很多,但不幸的是,一无所获。有没有描述这种格式的文件?或者需要从 xauth 源文件中提取结构?
可能不完全是您要查找的内容,但仅针对格式设置给出答案。
.Xauthority 是一个结构数组:
typedef struct xauth {
unsigned short family;
unsigned short address_length;
char *address;
unsigned short number_length;
char *number;
unsigned short name_length;
char *name;
unsigned short data_length;
char *data;
} Xauth;
你可能仍然需要能够解码每个条目——如果没有别的,通过源码苦读:Xauth.h
例如:
$ od -xc --endian=big .Xauthority | more
0000000 0100 0007 6d61 7869 6d75 7300 0130 0012
001 [=11=] [=11=] \a m a x i m u s [=11=] 001 0 [=11=] 022
0000020 4d49 542d 4d41 4749 432d 434f 4f4b 4945
M I T - M A G I C - C O O K I E
0000040 2d31 0010 c0ac 9e9c ee82 ef59 f406 b7f9
- 1 [=11=] 020 300 254 236 234 356 202 357 Y 364 006 267 371
0000060 b745 254e 0100 0007 6d61 7869 6d75 7300
267 E % N 001 [=11=] [=11=] \a m a x i m u s [=11=]
第一个短是0x100表示家族
下一个short是0x0007表示地址的长度
接下来的7个字节是地址:maximus
下一个短的是0001,座位号的长度
下一个字节是30,ascii 0,座位号
下一个short是0x0012,十进制18,名字的长度
接下来的18个字节是名字:MIT-MAGIC-COOKIE-1
下一个short是0x0010,十进制16,数据的长度
接下来的 16 个字节是数据:0xc0ac 到 0x254e。
然后重新开始。
这里有一些文档供您参考。
Cookie-based 访问(.Xauthority 文件)遵循 Inter-Client Exchange (ICE) Protocol and implemented in Inter-Client Exchange Library,您将在附录会话中找到更多格式详细信息。
例如,Appendix B 描述了常见的 MIT-MAGIC-COOKIE-1
身份验证方法。