<div dir="auto"><div>The show command presently sorts things based on last handshake time: <a href="https://git.zx2c4.com/wireguard-tools/tree/src/show.c#n27">https://git.zx2c4.com/wireguard-tools/tree/src/show.c#n27</a><br><div dir="auto"><br></div><div dir="auto">It sounds like you'd like the output of showconf to be sorted too so that peers have some stable output order; perhaps you have diffing configs in mind?</div><div dir="auto"><br></div><div dir="auto">The kernel will output peers in the order that they were added, iirc. Maybe wireguard-go should do the same?</div><div dir="auto"><br></div><div dir="auto">Alternatively, we could sort this in the showconf code? But then we need some sorting criteria, and people might wish instead for things to match the input order of the original file.</div><div dir="auto"><br></div><div dir="auto">In other words, either showconf sorts, or wireguard-go retains its input order. I think I'd prefer the latter. Do you have a preference?</div><div dir="auto"><br></div><div dir="auto">Jason</div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Feb 15, 2020, 23:42  <<a href="mailto:mikma.wg@lists.m7n.se">mikma.wg@lists.m7n.se</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I have an improvement to IpcGetOperation in wireguard-go.<br>
<br>
uapi: IpcGetOperation: return peers in sorted order<br>
<br>
Sort peers based on the public key.<br>
The pros of using a sorted peer list is that the order doesn't change in<br>
each ipc operation, or execution of the "wg showconf" command. Which <br>
could be the case previously with an unsorted peer list.<br>
<br>
The output from git format-patch is attached. The patch is also <br>
available at <br>
<a href="https://cgit.m7n.se/pub/wireguard-go/commit/?id=027bf58651f1a7b2be1bedfde187e5277a13f48e" rel="noreferrer noreferrer" target="_blank">https://cgit.m7n.se/pub/wireguard-go/commit/?id=027bf58651f1a7b2be1bedfde187e5277a13f48e</a><br>
<br>
/Mikael<br>
_______________________________________________<br>
WireGuard mailing list<br>
<a href="mailto:WireGuard@lists.zx2c4.com" target="_blank" rel="noreferrer">WireGuard@lists.zx2c4.com</a><br>
<a href="https://lists.zx2c4.com/mailman/listinfo/wireguard" rel="noreferrer noreferrer" target="_blank">https://lists.zx2c4.com/mailman/listinfo/wireguard</a><br>
</blockquote></div></div></div>